我已经获得了我需要的数据,只是想更好地呈现它,更像是excel中的数据透视表。给我正确的freq值的当前代码如下:
proc means data = d sum;
vars mth age freq;
class mth age;
run;
变量" mth"和"年龄"是类别(每组7组),目标是获得变量" freq"的总和。对于" mth"之间的所有交叉点和"年龄"。这是成功的,结果格式如下:
mth age NObs Variable Sum
1 1 20 mth 20
age 20
freq 40
2 30 mth 30
age 30
freq 65
... ... ...
7 1 25 mth 25
age 25
freq 48
同样,我的代码的频率求和是正确的,我只想显示如下结果:
7 6 5 4 3 2 1
(<- column sum totals)
1 40 40 (<- intersection sums for freq)
2
...
7
proc sql不是很好玩,我不知道那是什么用的。在此先感谢您的帮助
答案 0 :(得分:0)
PROC MEANS
不是真正合适的工具:您需要PROC TABULATE
。
proc tabulate data=have;
class mth age;
var freq;
tables mth,(all age)*freq*sum;
run;
这些方面的东西。 all
为您提供了列总计,您可以在,
之前执行相同操作以获取行总数。