在SAS - proc制表中,频率和总体百分比的2x2表格?

时间:2017-10-13 20:23:44

标签: sas

我有一组前置和后置分数,其值可以是1或2,例如:
邮政信箱 1 2
1 1
2 2
2 1
1 2
2 1

我需要创建一个列出频率的2x2表,其中百分比仅在总行/列中:

           1           2       Total
1         14          60      74 / 30%
2         38          12      50 / 20%
Total   52 / 21%    72 / 29%    248

它不需要使用n和百分之间的/来专门格式化,它们可以在不同的行上。我只需要确保表中的总百分比(没有累积百分比)。

我认为我应该使用proc制表来实现这一目标,但我是SAS的新手并且无法解决这个问题。任何帮助将不胜感激。

Code I尝试过:

proc tabulate data=.bilirubin order=data; 
   class pre ; 
   var post ; 
   table pre , post*( n colpctsum); 
run;

1 个答案:

答案 0 :(得分:0)

您可以制作自己的报告。例如,您可以使用PROC SUMMARY来获取频率。添加数据步骤以计算百分比并生成包含要显示的文本的字符变量。然后使用PROC REPORT显示它。

proc summary data=have ;
  class pre post ;
  output out=summary ;
run;
proc format ;
  value total .='Total (%)';
run;
data results ;
  set summary ;
  length display $20 ;
  if _type_=0 then n=_freq_;
  retain n;
  if _type_ in (0,3) then display = put(_freq_,comma9.);
  else display = catx(' ',put(_freq_,comma9.),cats('(',put(_freq_/n,percent8.2),')'));
run;
proc report  missing data=results ;
  column pre display,post n ;
  define pre / group ;
  define post / across ;
  define n / noprint ;
  define display / display ' ';
  format pre post total.;
run; 

enter image description here