我试图排除显示在名为 - clmspull并注册的表中的个人列表。关键在于排除糖尿病患者,因为我们正在寻找那些已经患有糖尿病的人筛查。
我将列表保存为名为" diabexc"的永久数据集。我知道我在某处合并,例如:
data excdiab; /*new data set that will exclude the diabetics*/
merge diabexc (IN=a) clmspull (IN=b) enroll (IN=c);
by edipn;
run;
我不确定这是否正确,我觉得我在正确的轨道上......我们只是希望这些人从数据中删除。
这是今天要的,所以我很疯狂。非常感谢您提供的任何帮助!谢谢。
答案 0 :(得分:1)
data diabexc; input edipn ; datalines; 1 2 3 4 ;
data clmspull;
input edipn ;
datalines;
3
5
;
data enroll;
input edipn ;
datalines;
2
6
;
data excdiab; /*new data set that will exclude the diabetics*/
merge diabexc (IN=a) clmspull (IN=b) enroll (IN=c);
by edipn;
if a = 1 and b = 0 and c = 0;
run;
答案 1 :(得分:0)
您可以在proc sql中使用子查询:
proc sql ; create table excdiab as select * from diabexc where epidn ^in(select epidn from clmspull) and epidn ^in(select epidn from enroll) ; quit ;