我有一个逐行学生信息的数据集,例如:
1234年秋季国际
2234年秋季国内
2234年秋季国内
2235年秋季国际
7234 2014年秋季国际
7234 2014年秋季国内
7234 2014年秋季国内
7235 2014年秋季国际
8234 2013年春季国际
8234春季2013国内
8234春季2013国内
8235 2013年春季国际
9234 2014年春季国际
9234年春季2014年国内
9234年春季2014年国内
9235 2014年春季国际
以上数据反映了ID,术语和公民身份。我使用proc freq和tabulate来尝试获取百分比,但我不断获得整个数据集的总体百分比。我想要每学期的百分比,即2013年秋季百分比的总和应为2项(国际和国内),并且相当于100%。
答案 0 :(得分:1)
表格中需要rowpctn
或colpctn
。
data have;
input
id semester $ year origin :$15.
;
datalines;
1234 Fall 2013 Domestic
2234 Fall 2013 Domestic
2234 Fall 2013 Domestic
2235 Fall 2013 International
7234 Fall 2014 International
7234 Fall 2014 Domestic
7234 Fall 2014 Domestic
7235 Fall 2014 International
8234 Spring 2013 International
8234 Spring 2013 Domestic
8234 Spring 2013 Domestic
8235 Spring 2013 International
9234 Spring 2014 International
9234 Spring 2014 Domestic
9234 Spring 2014 Domestic
9235 Spring 2014 International
;;;;
run;
proc tabulate data=have;
class semester year origin;
tables semester*year, origin*(n rowpctn);
run;