全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1606 3
2017-06-21
我需要写一个关于TTEST 的MACRO, 实现下面的功能,我想问下,怎样才能PRINT 出来M_MEAN ,F_MEAN

我下面写的有什么问题。谢谢!
%macro t_table (numvar);
%let numvar=age;
proc ttest data=chol_new;
class sex;
var &numvar;
ods output Statistics = Stat TTests = tt;run;

data _null_;set stat;call symputx ("p",probt);run;

data _null_;if sex='M' then do;
       call symput ('m_mean',mean);end;
       if sex='F' then do;
       call symput ('f_mean',mean);end;run;

data r;set tt;where method='Satterthwaite';run;

proc print data=r (drop=variances variable method);run;

%mend;







二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2017-6-21 10:36:54
题目需要实现的功能
附件列表
Capture.JPG

原图尺寸 22.58 KB

题目实现功能

题目实现功能

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2017-6-22 08:44:23
%macro t_table(var);
proc ttest data=chol_new;
class sex;
var &var;
ods output Statistics = Stat TTests = tt;  
run;

data _null_;
set Stat;
if Class = 'm' then do;
    call symput ('m_mean',Mean);end;
if Class = 'f' then do;
    call symput ('f_mean',Mean);end;
run;

data _null_;
set tt;
if Method = "Satterthwaite" then do;
  call symput("P",Probt);
  call symput("T",tValue);
  call symput("df",DF);
end;
run;

data t_table;
F_mean = &f_mean;
M_mean = &m_mean;
t = &T;
df = &df;
p = &P;
run;
%mend;
%t_table(age)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2017-6-22 08:46:50
最后差不多是这样
附件列表
Capture.PNG

原图尺寸 6.38 KB

Capture.PNG

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群