List 通过SAS中的变量列表求和变量列表

List 通过SAS中的变量列表求和变量列表,list,sas,List,Sas,将一组变量与另一组变量相加的最有效方法是什么?我正在处理大量结构不同的文件,因此对于某些文件,我必须定义要求和的变量,求和依据的变量将不同。我已经解决了列表问题,但需要帮助获得使用这些宏变量来存储变量列表的总和 我来自一个Stata的背景,在那里我只需要通过(byvars')折叠(sum)sumvars' SAS中的项目总和不明显。(或者在我开始的时候不适合我。)实现这一点的简单方法是使用proc means、proc freq或proc sql 在您的例子中,语法是这样的。VarX是您的分组变

将一组变量与另一组变量相加的最有效方法是什么?我正在处理大量结构不同的文件,因此对于某些文件,我必须定义要求和的变量,求和依据的变量将不同。我已经解决了列表问题,但需要帮助获得使用这些宏变量来存储变量列表的总和


我来自一个Stata的背景,在那里我只需要通过(byvars')折叠(sum)
sumvars'

SAS中的项目总和不明显。(或者在我开始的时候不适合我。)实现这一点的简单方法是使用proc meansproc freqproc sql

在您的例子中,语法是这样的。VarX是您的分组变量。我们总是必须在SAS中对数据进行排序

proc sort data=Begin; by var1 var2 var3 ; run; 

proc means data=Begin noprint; /*Use noprint unless you want huge printouts to screen.*/
    by Var1 var2 var3;
    output out=Output_file_name
    sum(Variable_you_wish_to_sum1)=Name_of_summed_variable1
    sum(variblae_you_sum2)= 
    ....
    ;
run;
Proc means拥有大量选项,详情请参见

编辑:更新的文档:

同样的概念,在PROC MEANS中的BY语句中使用“group”变量。请注意,正如所提出的,您的问题不符合SO准则,请参阅此处的“如何提问”帖子:谢谢。我会记住的!非常感谢。我试着用数据步的方法来做,但结果非常复杂。最好使用一个不是二十年前的文档参考,这里是最新的:@Reeza Good point。更新答案以包含建议的链接。