Jak obliczyć średnią ruchomą w sas
W statystykach średnia ruchoma reprezentuje średnią z poprzednich n wartości w zbiorze danych.
Najprostszym sposobem obliczenia średniej ruchomej w SAS-ie jest użycie instrukcji procexp .
Poniższy przykład pokazuje, jak używać tego stwierdzenia w praktyce.
Przykład: Oblicz średnią ruchomą w SAS
Załóżmy, że tworzymy następujący zbiór danych w SAS-ie:
/*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;
Załóżmy teraz, że chcemy obliczyć 3-okresową średnią ruchomą dla kolumny wartości .
W tym celu możemy użyć procexp :
/*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;
Nowa kolumna o nazwie my3_values wyświetla 3-okresową średnią ruchomą dla kolumny wartości .
Na przykład trzecia wartość kolumny wartości_my3 reprezentuje średnią z 3 poprzednich okresów:
- Średnia krocząca = (7+12+14) / 3 = 11,0000
Czwarta wartość kolumny wartości_ma3 reprezentuje również średnią z 3 poprzednich okresów:
- Średnia krocząca = (12+14+12) / 3 = 12,6667
I tak dalej.
Aby obliczyć średnią ruchomą dla innej liczby okresów, wystarczy zmienić wartość po wprowadzeniu kodu.
Na przykład moglibyśmy użyć poniższego kodu do obliczenia 4-okresowej średniej kroczącej dla kolumny wartości :
/*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;
Nowa kolumna o nazwie wartości_my4 wyświetla 4-okresową średnią ruchomą dla kolumny wartości .
Dodatkowe zasoby
Poniższe artykuły wyjaśniają, jak wykonywać inne typowe zadania w SAS-ie:
Jak zidentyfikować wartości odstające w SAS
Jak obliczyć percentyle w SAS-ie
Jak obliczyć średnią, medianę i tryb w SAS