Como calcular uma média móvel no sas
Nas estatísticas, uma média móvel representa a média dos n valores anteriores em um conjunto de dados.
A maneira mais fácil de calcular uma média móvel no SAS é usar a instrução proc expand .
O exemplo a seguir mostra como usar essa afirmação na prática.
Exemplo: Calcular uma média móvel no SAS
Suponha que criemos o seguinte conjunto de dados no SAS:
/*create dataset*/ data original_data; input time values; datalines ; 1 7 2 12 3 14 4 12 5 16 6 18 7 11 8 10 9 14 10 17 ; run ; /*view dataset*/ proc print data = original_data;
Agora suponha que queiramos calcular uma média móvel de 3 períodos para a coluna de valores .
Podemos usar proc expand para fazer isso:
/*calculate 3-period moving average for values*/
proc expand data =original_data out =out_data method=none;
idtime ;
convert values = values_ma3 / transout = (movave 3 );
run ;
/*view results*/
proc print data =out_data;
A nova coluna chamada my3_values exibe a média móvel de 3 períodos para a coluna de valores .
Por exemplo, o terceiro valor da coluna valores_meu3 representa a média dos 3 períodos anteriores:
- Média móvel = (7+12+14) / 3 = 11,0000
O quarto valor da coluna valores_ma3 também representa a média dos 3 períodos anteriores:
- Média móvel = (12+14+12) / 3 = 12,6667
E assim por diante.
Para calcular a média móvel para um número diferente de períodos, basta alterar o valor após mover o código.
Por exemplo, poderíamos usar o código a seguir para calcular uma média móvel de 4 períodos para a coluna de valores :
/*calculate 4-period moving average for values*/
proc expand data =original_data out =out_data method=none;
idtime ;
convert values = values_ma4 / transout = (movave 4 );
run ;
/*view results*/
proc print data =out_data;
A nova coluna chamada valores_meu4 exibe a média móvel de 4 períodos para a coluna de valores .
Recursos adicionais
Os artigos a seguir explicam como executar outras tarefas comuns no SAS:
Como identificar outliers no SAS
Como calcular percentis no SAS
Como calcular média, mediana e moda no SAS