【发布时间】:2018-03-12 23:05:52
【问题描述】:
我有以下数据框,它有 4 列。让我们称之为 df。
ID Start transfer Finish transfer Ward
0 7685933 04/11/2015 12:07 05/11/2015 12:49 General surgery
1 7685933 05/11/2015 12:49 11/11/2015 14:42 Anestesiology
2 7685933 11/11/2015 14:42 11/11/2015 16:12 Anestesiology
3 7685933 11/11/2015 16:12 18/11/2015 21:24 General surgery
4 7685933 18/11/2015 21:24 02/01/2016 06:45 ICU
5 7690142 06/11/2015 17:24 30/11/2015 18:11 Internal Medicine
6 7690142 30/11/2015 18:11 02/12/2015 17:04 Internal Medicine
7 7690142 02/12/2015 17:04 03/12/2015 20:40 Internal Medicine
8 7690142 03/12/2015 20:40 11/01/2016 18:00 Internal Medicine
9 7691888 08/11/2015 16:28 16/11/2015 17:11 Internal Medicine
10 7691888 16/11/2015 17:11 20/11/2015 18:13 Internal Medicine
11 7691888 20/11/2015 18:13 04/01/2016 18:02 Internal Medicine
12 7691888 04/01/2016 18:02 04/01/2016 21:13 Internal Medicine
现在我想根据“ID”列对数据进行分组,然后查找类似的连续病房,其中病房的“完成转移”与下一个连续类似病房名称的“开始转移”相同。一旦确定了这一点,我需要从最后一个连续病房行复制 Finish transfer 条目,并使用该值更新该特定病房的第一个条目。例如,索引 1 和 2 处的 row1 和 row2 都具有相似的病房,如果您查看 row1 (index1) 的 Finish Transfer 条目,它类似于 row2(index2) 的 Start Transfer。沃德也一样。我想要的是只有一行这个连续数据,其中开始传输是来自 row1 的数据,而完成传输是来自 row2。
我想要以下内容作为输出(可能在新数据框中):
ID Start transfer Finish transfer Ward
0 7685933 04/11/2015 12:07 05/11/2015 12:49 General surgery
1 7685933 05/11/2015 12:49 11/11/2015 16:12 Anestesiology
2 7685933 11/11/2015 16:12 18/11/2015 21:24 General surgery
3 7685933 18/11/2015 21:24 02/01/2016 06:45 ICU
4 7690142 06/11/2015 17:24 11/01/2016 18:00 Internal Medicine
5 7691888 08/11/2015 16:28 04/01/2016 21:13 Internal Medicine
提前感谢您的帮助。
【问题讨论】:
-
你已经描述了你想要什么,但没有描述你尝试这样做时出了什么问题,或者你克服这些问题的尝试是如何失败的。现在听起来你只是有一个规范,而不是一个问题。