sas总结了proc频率中的第三个变量

时间:2014-03-27 15:52:44

标签: sas sum frequency

我想在proc freqproc tabulate或类似我的数据集中创建一个类似下面的表格,其中我有三个变量:andel(分享),Aar(年)和Gruppe(小组)。

在我的数据集中,我有大约50万次观察,其中1次观察代表一个人。

如何创建表格而不必编程通过大量数据集?

我试过了:

proc freq data= data;
Tables Aar*gruppe*andel / nopercent norow nocol nocum ;
run;

proc tabulate data= data  missing;
class  gruppe aar andel  ;
Table  aar*gruppe*andel   , all/ rts=180;
run;

但这一切都不起作用 - 这是因为我希望对每个组andel和年gruppe的所有共享(变量aar)进行求和。而且我不希望每个andel的总计gruppe的每年(6个表)都有一个表格。

enter image description here

1 个答案:

答案 0 :(得分:1)

Proc Tabulate可能是正确的选择。它具有classvar的概念。 Class是集合事物的东西; var是(sum,mean等)计算的东西

proc tabulate data= data  missing;
class  gruppe aar ;
var andel;
Table  gruppe,aar*andel*sum/ rts=180;
run;

这样的事情应该是你的出发点。逗号将行与列分隔开;最右边是列,第二个最右边是行,第三个最右边是页面(最左边)。明星结合元素;在这里,这说

  

创建一个表,其中行是组,列是年,而对于   每年/每组/组合,显示股份总和。

* andel * sum可以在gruppe之后或在aar之后,它在很大程度上无关紧要(有时候它可能有所不同,传统上它放在列变量之后无关紧要,但是在这种情况下,它将是相同的),除了标签的位置,指示分析变量是什么(如果你想要它 - 你可以删除它)。