如何在sas中计算每组的总和
在SAS中可以使用以下方法按组计算值的总和:
方法一:按组计算总和
proc sql ;
select var1, sum(var2) as sum_var2
from my_data
group by var1;
quit ;
方法二:分几组求和
proc sql ;
select var1, var2, sum(var3) as sum_var3
from my_data
group by var1, var2;
quit ;
以下示例展示了如何在 SAS 中对以下数据集使用每种方法:
/*create dataset*/
data my_data;
input team $position $points;
datalines ;
A Guard 15
A Guard 12
A Guard 29
A Forward 13
A Forward 9
A Forward 16
B Guard 25
B Guard 20
B Guard 34
B Forward 19
B Forward 3
B Forward 8
;
run ;
/*view dataset*/
proc print data =my_data;
示例1:按组计算总和
下面的代码展示了如何计算每队的得分总和:
/*calculate sum of points by team*/
proc sql ;
select team, sum(points) as sum_points
from my_data
group by team;
quit ;
从成绩中我们可以看到,A队的选手总共得到了94分,B队的选手总共得到了109分。
例2:计算多组之和
以下代码展示了如何计算按团队和位置分组的积分总和:
/*calculate sum of points by team, grouped by team and position*/
proc sql ;
select team, position, sum(points) as sum_points
from my_data
group by team, position;
quit ;
生成的表格显示了球员根据其球队和位置获得的分数总和。
其他资源
以下教程解释了如何在 SAS 中执行其他常见任务: