如何用Pandas筛选特定手术前后指定范围的医疗预约记录
医疗数据提取处理需求
处理步骤
- 识别
手术类型列中的手术类型X; - 保留该手术日期前后各3次的医疗预约记录,对应标记为
-3、-2、-1(术前)和+1、+2、+3(术后),新增术前/术后标记列记录该标记; - 排除窗口外的预约记录及其他手术类型(如示例中的
Z)。
更新示例
原始数据框
| 患者ID | 手术ID | 手术类型 | 手术日期 | 是否有医疗预约 | 医疗预约日期 |
|---|---|---|---|---|---|
| 1 | 1 | X | 2022-09-03 | Y | 2022-01-01 |
| 1 | 1 | X | 2022-09-03 | Y | 2022-03-04 |
| 1 | 1 | X | 2022-09-03 | Y | 2022-05-04 |
| 1 | 1 | X | 2022-09-03 | N | NaT |
| 1 | 1 | X | 2022-09-03 | Y | 2022-11-04 |
| 1 | 1 | X | 2022-09-03 | Y | 2022-11-29 |
| 1 | 2 | Z | 2022-12-01 | N | NaT |
| 1 | 1 | X | 2022-09-03 | Y | 2023-01-02 |
| 1 | 1 | X | 2022-09-03 | Y | 2023-01-13 |
目标数据框
| 患者ID | 手术ID | 手术类型 | 手术日期 | 是否有医疗预约 | 医疗预约日期 | 纳入标记 |
|---|---|---|---|---|---|---|
| 1 | 1 | X | 2022-09-03 | Y | 2022-01-01 | -3 |
| 1 | 1 | X | 2022-09-03 | Y | 2022-03-04 | -2 |
| 1 | 1 | X | 2022-09-03 | Y | 2022-05-04 | -1 |
| 1 | 1 | X | 2022-09-03 | N | NaT | |
| 1 | 1 | X | 2022-09-03 | Y | 2022-11-04 | +1 |
| 1 | 1 | X | 2022-09-03 | Y | 2022-11-29 | +2 |
| 1 | 2 | Z | 2022-12-01 | N | NaT | 排除该行 |
| 1 | 1 | X | 2022-09-03 | Y | 2023-01-02 | +3 |
| 1 | 1 | X | 2022-09-03 | Y | 2023-01-13 | 排除该行 |
内容的提问来源于stack exchange,提问作者Eoin Vaughan
相关产品推荐
相关产品推荐

