小编hun*_*gtx的帖子

宏返回一个值

我创建了以下宏.Proc power返回pw_cout包含列的表Power.该data _null_步骤将列Power中的值分配pw_out给宏变量tpw.我希望宏返回值tpw,以便在主程序中,我可以在DATA步骤中调用它,如:

data test;
   set tmp;
   pw_tmp=ttest_power(meanA=a, stdA=s1, nA=n1, meanB=a2, stdB=s2, nB=n2);
run;
Run Code Online (Sandbox Code Playgroud)

这是宏的代码:

%macro ttest_power(meanA=, stdA=, nA=, meanB=, stdB=, nB=);


proc power; 
   twosamplemeans test=diff_satt 
   groupmeans = &meanA | &meanB 
   groupstddevs = &stdA | &stdB
   groupns = (&nA &nB)
   power = .;    
   ods output Output=pw_out;
run;

data _null_;
    set pw_out;
    call symput('tpw'=&power);
run;

&tpw
%mend ttest_power;
Run Code Online (Sandbox Code Playgroud)

sas sas-macro

12
推荐指数
2
解决办法
1万
查看次数

标签 统计

sas ×1

sas-macro ×1