我有一个虚拟变量emu3
,如果emu3=0
我有1.560个观察值,emu3=1
则有1.905个观察值。
该数据是1992 - 2006年期间的数据。我希望在avgflow
和emu3=0
时计算每年变量emu3=1
的总和。
我试过这个:
PROC MEANS DATA=EMUdummy2 NWAY ;
CLASS emu3 ;
VAR avgflow ;
OUTPUT OUT=fam1 SUM=sumt;
RUN;
PROC PRINT DATA=fam1;
VAR sumt;
RUN;
但我不确定这是否正确,我不知道我是如何做到这一年的。
任何人都可以帮助我吗?
答案 0 :(得分:0)
假设您有一个变量年份,请将其添加到PROC MEANS
中的类语句。
PROC MEANS DATA=EMUdummy2 NWAY ;
CLASS emu3 year;
VAR avgflow ;
OUTPUT OUT=fam1 SUM=sumt;
RUN;
另外,将emu3和年份添加到PROC PRINT
PROC PRINT DATA=fam1;
VAR emu3 year sumt;
RUN;
如果你有一个日期变量(我假设它被称为DATE)但没有年变量,那么你可以像这样创建一个YEAR变量:
data emudummy2;
set emudummy2;
year = year(date);
run;