SAS计算多变量的百分比

SAS计算多变量的百分比,sas,Sas,我喜欢计算多个变量的百分比。即计算每个变量(列)的和,并将每个变量和除以频率。我试图获取proc summary来获取这两个统计数据,并生成数组来计算百分比,但结果值似乎不正确,但日志中没有错误。我看到procsql可以进行百分比计算,但我不知道如何对多个变量进行百分比计算--一定不难,但我只是不知道如何列出它们 如果你能指出我做错了什么1)以proc摘要的方式,或者2)指导我如何编写proc-SQL变量列表,那就太好了。谢谢, 以下是我编写的代码: (一) (二) 是总结数值变量的好工具。(为

我喜欢计算多个变量的百分比。即计算每个变量(列)的和,并将每个变量和除以频率。我试图获取proc summary来获取这两个统计数据,并生成数组来计算百分比,但结果值似乎不正确,但日志中没有错误。我看到procsql可以进行百分比计算,但我不知道如何对多个变量进行百分比计算--一定不难,但我只是不知道如何列出它们

如果你能指出我做错了什么1)以proc摘要的方式,或者2)指导我如何编写proc-SQL变量列表,那就太好了。谢谢,

以下是我编写的代码:

(一)

(二)

是总结数值变量的好工具。(为了防止报告,请在PROC MEANS行中添加NOPRINT)


好啊您得到了eaach变量的sum和ncount。如何计算每个变量的百分比?我尝试使用proc方法计算这些变量的百分比,因为这些变量是0/1数据,它是这样工作的。非常感谢。
proc summary data=m3resp;
 var Lma1-Lma69;
 output out=sumofLma sum=sumLma1-sumLma69;
run;

data sumLmaout;
 set sumoflma;
 array pctma[69];
 do i=1 to 69;
  pctma[i]=input(cat(sumLma,i),5.)/_freq_;
 end;
 drop i;
run;
PROC SQL;
 SELECT Lma1
 (Lma1/SUM(Lma1)) AS PCTLma1
 FROM m3resp;
QUIT;
data numbers;
 input num1 num2;
 datalines;
 10 5
 10 5
 10 5
 10 5
 10 5
 10 5
 10 5
 10 5
 10 5
 10 5
;

proc means n sum mean median data=work.numbers maxdec=2; 
 var num1 num2;
 output out=work.totals(drop=_freq_ _type_) 
  sum(num1 num2)=NUM1_TOTAL NUM2_TOTAL
  n(num1 num2)=NUM1_COUNT NUM2_COUNT;
run;