【发布时间】:2021-11-11 16:29:54
【问题描述】:
我有以下数据集,每个患者 ID 有多个患者 ID 和治疗日期:
| Patient_ID | Dates |
|---|---|
| 2038 | 2012-01-02 |
| 2038 | 2012-02-13 |
| 2038 | 2012-02-27 |
| 2120 | 2005-02-05 |
| 2120 | 2009-03-31 |
我想做的是:
A) 提取每位患者的总治疗时间,然后
B) 保存最大和最小治疗日期(每个患者 ID),并且
C) 最后计算每个患者 ID 的治疗次数(日期)。
这是我目前尝试过的:
df=Patient_Dates
df['Dates'] = pd.to_datetime(df['Dates'])
grouped = df.groupby(['Patient_ID'])
op = []
for Name, group in grouped:
LengthOfTreatment_days = group['Dates'].max() - group['Dates'].min()
op.append([Name, LengthOfTreatment_days])
这算 A) 天数。但是,我找不到执行上述 B) 和 C) 的方法。
任何想法将不胜感激。
【问题讨论】:
-
请不要将您的数据发布为屏幕截图。您在编辑之前有表格,我已将其恢复。如果需要,更改数据(在文本内)。