【发布时间】:2021-05-21 18:11:27
【问题描述】:
我有一个看起来像这样的数据框(但有 1000 行):
| Person_ID | Visit_ID | Time_Diff |
|---|---|---|
| 1 | 1 | NA |
| 2 | 2 | NA |
| 3 | 3 | NA |
| 3 | 4 | 1444 |
| 4 | 5 | NA |
| 4 | 6 | 0 |
| 4 | 7 | 0 |
| 4 | 8 | 180 |
| 5 | 9 | NA |
| 6 | 10 | NA |
| 7 | 11 | NA |
| 7 | 12 | 19 |
| 8 | 13 | NA |
| 8 | 14 | 25 |
| 9 | 15 | NA |
你从中看到的是:
- 同一个 person_ID 可以在多行中
- Visit_ID 始终以 1 递增
- Time Diff 有时为 NA,有时为负,有时为正
我想做的是:
- 创建一个新的 Visit_ID(我们称之为 New_Visit_ID)
- 从第一行的 1 开始该 ID,然后每行递增 Person_ID 更改或 Time_Diff 大于 24(即不是 NA 或
这意味着具有
希望这很清楚!
期望的输出应该是:
| Person_ID | Visit_ID | Time_Diff | New_Visit_ID |
|---|---|---|---|
| 1 | 1 | NA | 1 |
| 2 | 2 | NA | 2 |
| 3 | 3 | NA | 3 |
| 3 | 4 | 1444 | 4 |
| 4 | 5 | NA | 5 |
| 4 | 6 | 0 | 5 |
| 4 | 7 | 0 | 5 |
| 4 | 8 | 180 | 6 |
| 5 | 9 | NA | 7 |
| 6 | 10 | NA | 8 |
| 7 | 11 | NA | 9 |
| 7 | 12 | 19 | 9 |
| 8 | 13 | NA | 10 |
| 8 | 14 | 25 | 11 |
| 9 | 15 | NA | 12 |
【问题讨论】: