我是SAS的初学者,遇到以下问题。
我需要从一个数据集中计算多个变量(A B C)的计数和百分比,然后将结果保存到另一个数据集中。
我的代码是:
proc freq data = mydata;
表A B C/out = data_out;运行;
每个变量的过程结果将显示在SAS输出窗口中,但data_out仅包含最后一个变量的结果。如何将它们全部保存在data_out中?
任何帮助表示赞赏。
最佳答案
ODS OUTPUT
是您的答案。您不能使用OUT=
直接输出,但可以这样输出:
ods output OneWayFreqs=freqs;
proc freq data=sashelp.class;
tables age height weight;
run;
ods output close;
OneWayFreqs是单向表,(n> 1)路表是CrossTabFreqs:
ods output CrossTabFreqs=freqs;
ods trace on;
proc freq data=sashelp.class;
tables age*height*weight;
run;
ods output close;
您可以通过运行
ods trace on;
,然后运行您的初始proc(在屏幕上执行任何操作)来找到正确的名称;它会告诉您日志中输出的名称。 (当您厌倦了看到它时,使用ods trace off;
。)关于sas - 使用多个表保存SAS proc freq的结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27992514/