sas - 使用 PROC SQL 计数独特的患者和整体观察
问题描述
在 SAS 中工作,但使用一些 SQL 代码来计算唯一患者的数量以及一组指标的观察总数。每条记录都有一个患者标识符、患者所在的设施,以及每个病床部分(患者所在医院的特定位置)的一组二进制指标 (0,1)。对于每个患者记录,只有 1 个病床部分的值可以为“1”。总体而言,患者可以在一个病床区或其他病床区进行多次观察,即患者可以住院 > 1。我们的想法是滚动按设施设置的数据,并计算每个病床区的入院总数,以及每个床位的总人数。人数将始终 <= 观察人数。计数人员刚刚添加到我的待办事项列表中,到目前为止,我只是使用以下代码总结每个床部分的观察结果:proc sql; 创建表fac_bedsect作为选择设施,sum(bedsect_alc)作为bedsect_alc,sum(bedsect_blind)作为bedect_blind,sum(bedsect_gen)作为bedect_gen从bedect_type按设施分组;退出;
有没有一种方法可以将每个床部分的唯一人数 # 合并到此代码中?谢谢。
解决方案
在不了解源表的情况下,不可能准确回答,但计算不同值的语法如下所示。您需要在我使用“patient_id”的地方使用正确的列名:
SELECT
facility
, COUNT(DISTINCT patient_id) AS patient_count
, SUM(bedsect_alc) AS bedsect_alc
, SUM(bedsect_blind) AS bedsect_blind
, SUM(bedsect_gen) AS bedsect_gen
FROM bedsect_type
GROUP BY
facility
;