【发布时间】:2026-01-26 11:10:01
【问题描述】:
你好:
我有一个患者索赔数据集,并且想创建一组新的仅包含诊断为酒精使用的患者索赔的数据集。我已将这些酒精诊断代码放入一个新的数据集中,并尝试针对更大的一组患者声明运行它以创建新的。
下面是我一直在尝试的代码:
data alcohol;
input code;
datalines;
30300
30301
30302
30303
30390
30391
30392
30393
30501
30500
30502
30503
;
data alcohol;
set alcohol;
code1 = put(code, 5.);
output;
run;
/*inpatient records with these codes*/
proc sql;
create table alcin as
select b.*
from allpreg as b
where
diag1 in (select code1 from alcohol) or
diag2 in (select code1 from alcohol) or
diag3 in (select code1 from alcohol) or
diag4 in (select code1 from alcohol) or
diag5 in (select code1 from alcohol) or
diag6 in (select code1 from alcohol) or
diag7 in (select code1 from alcohol) or
diag8 in (select code1 from alcohol) or
diag9 in (select code1 from alcohol);
quit;
有没有更好的方法来做到这一点,或者这行得通吗? 谢谢!
【问题讨论】:
-
这个问题并不真正符合 * 的指导方针。请在此处阅读指南:*.com/help/dont-ask。但这并不意味着这不是一个好问题。就是不合适。
-
转置和使用连接怎么样
-
@EricTaylor 该评论似乎没有多大帮助。您认为不符合准则的问题怎么办?什么可以改进这个问题?
-
@Joe “有没有更好的方法来做到这一点”和“这行得通吗?”在指导方针下是有问题的,原因有两个。第一个问题往往会产生主要根据意见进行交易的答案,第二个问题是“为什么我的代码不起作用?”的推论。 OP 不清楚为什么当前的“方式”在某些方面存在缺陷,或者为什么他认为可能有“更好”的方式。他也不清楚“有效”是什么意思。我的回答可能有点生硬。我很抱歉。
-
@EricTaylor 感谢您的澄清。当您发表诸如“这个问题不太适合”之类的评论时,最好提供可操作的建议,以便提问者将来可以改进!
标签: sas