我想将以下调用的结果格式化为PROC UNIVARIATE(TestForLocation)。
proc sort data=sashelp.class; by sex; run;
proc univariate data = sashelp.class mu0 = 1;
ods select TestsForLocation;
var age;
by sex;
ods output TestsForLocation=ttest;
run;
data ttest; set ttest; keep sex test stat pvalue;run;
proc print data=ttest;run;
如何将输出转换为具有以下列的数据集?
Obs, Sex, StudentsT_Stat, StudentsT_pValue, SignedRank_Stat, SignedRank_Pvalue
答案 0 :(得分:1)
你需要在这里进行双重转置。制作包含12个观察值的数据集,其中包含四列:Obs
,Sex
,ID
是Test和(Stat | pValue)的组合,您希望将其作为最终变量名称,{ {1}}是您想要转换为变量的值。然后,
Value
(proc transpose data=ttest_double out=ttest_transposed;
by obs sex;
id ID;
var Value;
run;
和ID
可以是您喜欢的任何变量名称。)