楼主: 小猪同同
796 0

请教macro实际问题 [推广有奖]

  • 0关注
  • 0粉丝

大专生

86%

还不是VIP/贵宾

-

威望
0
论坛币
1061 个
通用积分
1.0750
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
565 点
帖子
16
精华
0
在线时间
88 小时
注册时间
2013-3-11
最后登录
2024-1-20

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
新手小白,想写了一个小的macro程序自动检查confounder,但想在程序中加下面的data能功,却不能成功,请教各位大神

%macro confounder( yvar= , xvar= ,covars=,catvars=);

*build base model the get the coefficient;
proc genmod data=analysis ;
class ind &catvars(ref="0")/param=ref;
model &yvar = &xvar /dist=normal;
repeated subject=Ind /corr=unstr corrw;
ods output GEEEmpPEst=parm (keep=Parm estimate where=(parm="&xvar"));
title2 "based model for estimate the confounder";
run;

*add each confounder into the model;

proc genmod data=analysis ;
class ind &catvars(ref="0")/param=ref ;
model &yvar = &xvar &covars /dist=normal;
repeated subject=Ind /corr=unstr corrw;
title3 "covars in model = &covars";
ods output GEEEmpPEst=adparm (keep=Parm estimate where=(adparm="&xvar"));
run;%mend confounder;
---------------------------------------------------------------------------------------------------------
想加入的data部分
*merge the two estimate of beta together;
data adparm;
set adparm;
rename estimate=adestimate;
run;

data adjust;
merge parm adparm;
differ=abs((adestimate-estimate)/estimate));
if differ>=0.15 then confounder=1;
else confounder=0;
run;

proc print data=adjust;
run;

多谢大家了!!!


二维码

扫码加我 拉你入群

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

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

关键词:Macro 实际问题 acr CRO Mac repeated normal where 程序

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-25 19:25