如何在 sas 中按组对观察值进行计数
您可以使用以下方法在 SAS 中按组计算总观测值:
方法 1:按组计算观察值
proc sql ;
select var1, count(*) as total_count
from my_data
group by var1;
quit ;
方法 2:对多组观察结果进行计数
proc sql ;
select var1, var2, count(*) as total_count
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
C Guard 34
C Forward 19
C Forward 3
C Forward 8
;
run ;
/*view dataset*/
proc print data =my_data;
示例 1:按组计算观察结果
以下代码显示了如何计算每个团队的观察总数:
/*count observations by team*/
proc sql ;
select team, count(*) as total_count
from my_data
group by team;
quit ;
从结果中我们可以看到,A 组包含6 个观测值,B 组包含2 个观测值,C 组包含4 个观测值。
示例 2:对多个组的观察结果进行计数
以下代码显示了如何计算按团队和位置分组的观察总数:
/*count observations by team and position*/
proc sql ;
select team, position, count(*) as total_count
from my_data
group by team, position;
quit ;
从输出表中我们可以看到:
- A 队共有3 名球员,担任攻击手的位置。
- A队共有3名球员,担任后卫位置。
- B队共有2名球员,担任后卫位置。
- C队共有3名球员,担任攻击手位置。
- A队共有1名球员,担任后卫位置。
其他资源
以下教程解释了如何在 SAS 中执行其他常见任务: