如何在 SAS 中创建 运行 3 观察平均值?
How to create a running 3 observation average in SAS?
我有一个数据集,其中一列包含一些体积,我想创建第二列,其中包含前三个观测值的平均值。这可能吗?
例如
data have;
input Vol Avg_pre_4;
datalines;
228 .
141 .
125 .
101 164.66
116 122.33
107 114
74 108
118 99
127 99.67
123 106.33
;
run;
LAG
函数是一个自动内置队列。
VOL_AVG_OF_PRIOR3 = MEAN ( lag(Vol), lag2(Vol), lag3(Vol) )
if _n_ < 4 then VOL_AVG_OF_PRIOR3 = .;
我有一个数据集,其中一列包含一些体积,我想创建第二列,其中包含前三个观测值的平均值。这可能吗?
例如
data have;
input Vol Avg_pre_4;
datalines;
228 .
141 .
125 .
101 164.66
116 122.33
107 114
74 108
118 99
127 99.67
123 106.33
;
run;
LAG
函数是一个自动内置队列。
VOL_AVG_OF_PRIOR3 = MEAN ( lag(Vol), lag2(Vol), lag3(Vol) )
if _n_ < 4 then VOL_AVG_OF_PRIOR3 = .;