【发布时间】:2018-03-12 23:43:16
【问题描述】:
我有数百万患者遭遇的大型数据集,其中包括诊断、时间戳、患者 ID 和人口统计信息。
我们发现,一种特定类型的疾病经常与一种常见疾病共存。
我想计算每个患者患有此类疾病的数量,然后创建一个直方图,显示有多少人患有 1、2、3、4 等其他疾病。
这是数据的格式。
PatientID Diagnosis Date Gender Age
1 282.1 1/2/10 F 25
1 282.1 1/2/10 F 87
1 232.1 1/2/10 F 87
1 250.02 1/2/10 F 41
1 125.1 1/2/10 F 46
1 90.1 1/2/10 F 58
2 140 12/15/13 M 57
2 282.1 12/15/13 M 41
2 232.1 12/15/13 M 66
3 601.1 11/19/13 F 58
3 231.1 11/19/13 F 76
3 123.1 11/19/13 F 29
4 601.1 12/30/14 F 81
4 130.1 12/30/14 F 86
5 230.1 1/22/14 M 60
5 282.1 1/22/14 M 46
5 250.02 1/22/14 M 53
一般来说,我在考虑 DO 循环,但我不确定从哪里开始,因为数据集中有重复项,例如患者 1(282.1 被列出两次)。我不确定如何解释这一点。有什么想法吗?
要计数的目标诊断为 282.1、232.1、250.02。在此示例中,患者 1 的计数为 3,患者 2 的计数为 2,依此类推。
编辑: 这是我使用的,但输出在输出的多行上显示每个 PatientID。
PROC SQL;
create table want as
select age, gender, patientID,
count(distinct diagnosis_description) as count
from dz_prev
where diagnosis in (282.1, 232.1)
group by patientID;
quit;
这是输出表的样子。为什么这个患者 ID 会出现这么多次?
Obs AGE GENDER PATIENTID count
1 55 Male 107828695 1
2 54 Male 107828695 1
3 54 Male 107828695 1
4 54 Male 107828695 1
5 54 Male 107828695 1
【问题讨论】:
-
发布你的尝试。
-
您的下一个问题将是哪些疾病和哪些群体,因此请确保您的方法现在考虑到这一点。
-
@Reeza 我已经更新了帖子以显示我尝试过的内容和结果。
-
您所包含的变量(
age和gender)既不是组变量也不是聚合统计信息。将它们添加到 GROUP BY 或从选定变量列表中删除它们。