我有2套。第一个很大(约 1000k 行),它包含按观察年份分组的患者观察数据,从 2000 年到 2005 年。在这个集合中,有一些患者包含所有年份的观察结果(或者我应该说每年序列),还有一些只有 2002-2003 年的观测值。
第二组仅包含从 2000 年到 2005 年的年份序列,共 6 行。
我想要的是一个表格,其中包含每个患者的第 1 组数据,但经过扩展,以便对于每个患者,我可以看到第 2 组中每年的观察结果,如果第 1 组中没有特定年份的任何观察结果,应仅在数据列中添加空行或空行(或更好的“-”) 。
例如,第 1 组可以是:
patient_id | obs_year | data
a 2000 10
a 2001 12
a 2002 13
a 2003 9
a 2004 1
a 2005 6
bb 2002 100
bb 2003 110
第 2 组是这样的:
year |
2000
2001
2002
2003
2004
2005
所以我想要的理想结果是这样的:
patient_id | obs_year | data
a 2000 10
a 2001 12
a 2002 13
a 2003 9
a 2004 1
a 2005 6
bb 2000 -
bb 2001 -
bb 2002 100
bb 2003 110
bb 2004 -
bb 2005 -
我还应该提到我在 SAS 中完成这项工作,因此欢迎使用 SQL 查询或 SAS 脚本(或两者)解决方案。