使用PROC SQL计数不重复患者和总体观察

时间:2018-10-24 22:21:12

标签: sas proc-sql

在SAS中工作,但使用一些SQL代码来计算唯一患者的数量,但也要计算一组指标的观察总数。每条记录都有一个患者标识符,患者所在的设施以及每个病床区域(患者所在医院的特定位置)的一组二进制指示器(0,1)。对于每个患者记录,只有1个床位的值可以为'1'。总体而言,患者可以在一个病床区域或其他病床区域进行多次观察,也就是说,患者可以住院>1。其想法是按机构汇总此数据设置,并计算每个病床区域的总入院数,还可以每个床段的总人数。人员计数将始终小于观察值。人数统计刚添加到我的待办事项列表中,至此,我仅使用以下代码总结每个床位的观察结果:     proc sql;       创建表fac_bedsect为       选择设施,         sum(bedsect_alc)作为bedect_alc,         sum(bedsect_blind)作为bedect_blind,         sum(bedsect_gen)作为bedect_gen       来自bedsect_type       按设施分组;     退出;

是否有一种方法可以将每个床位的唯一身份人数合并到此代码中?谢谢。

1 个答案:

答案 0 :(得分:3)

在不了解源表的情况下,不可能准确回答,但是用于计数不同值的语法如下所示。您将在我使用“ 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
;