楼主: jsntxt
2827 1

SAS选取年龄性别匹配的程序问题 [推广有奖]

  • 0关注
  • 0粉丝

本科生

62%

还不是VIP/贵宾

-

威望
0
论坛币
255 个
通用积分
0.0600
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
194 点
帖子
42
精华
0
在线时间
109 小时
注册时间
2008-5-29
最后登录
2015-10-21

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

    我想从数据库中选择性别相同,年龄相差不超过2岁的病例与对照,我参考了论坛帖子https://bbs.pinggu.org/thread-2845169-1-1.html,自己的程序如下,虽然程序可以运行,但生成的总库hb并没有达到匹配的效果,里面还是5条记录,恳请大侠帮着改一改啊,从而能够达到匹配的效果,不胜感激!

data match;

input id sex age case;

cards;

1 1 34 1

2 1 35 0

3 2 65 1

4 2 66 0

5 1 11 1

run;

data a1;

set match;

pp=sex; *性别匹配变量pp;

run;

data a_case a_control;set a1;

if case=1 then output a_case; *病例数据集a_case;

if case=0 then output a_control; *对照数据集a_control;

run;

%macro ss;

proc datasets lib=work;delete sample;run;*清除前次抽选样本,方便重复运行宏抽样程序;

proc sql noprint;

select count(*) into: num from a_case; *统计病例个数;

%do i=1 %to #

%let k=%eval(&i-1);

proc sql noprint;

select id into: idx separated by ' ' from a_case;  *病例ID 到宏idx;

%let xx=%scan(&idx,&i,' ') ;

data case&i;set a_case;

if id=&xx then call symput("pp_v",pp); *相同匹配条件pp;

if id=&xx then call symput("age_v",age); run; *范围匹配条件age;

data control&i;set a_control;

if pp="&pp_v" and abs(age-&age_v)<3; run; *生成符合匹配条件control样本;

proc surveyselect noprint data=control&i method=srs n=1 out=sample&i seed=1000;        *n=1 ,11匹配;

data a_control;set a_control sample&i; run;

proc sql noprint;

create table a_control as  select * from a_control  group by id having n(id)=1; *剔除已选择control样本;

%end;

data sample;set sample:;run; *生成匹配样本库;

data hb;set a_case sample;run; *生成总库;

proc datasets lib=work;save a1 js a_case a_control sample hb; run; *清除过程文件;

%mend;

%ss;

二维码

扫码加我 拉你入群

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

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

关键词:proc sql datasets separate control dataset 程序

沙发
泡泡~·馍 发表于 2014-6-23 15:17:50 |只看作者 |坛友微信交流群
已经解决了

G}Y$EIZ@8~~ENL5])SGW9TJ.jpg (42.74 KB)

程序运行后出现了这个问题

程序运行后出现了这个问题

使用道具

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

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

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

GMT+8, 2024-4-25 13:07