【发布时间】:2019-11-19 10:52:19
【问题描述】:
如何针对同一数据框中第一列的所有相同值提取和比较数据框中第二列的值?
我有一个数据框为“df”:
Name Datetime
Bob 26-04-2018 12:00:00
Claire 26-04-2018 12:00:00
Bob 26-04-2018 12:30:00
Grace 27-04-2018 08:30:00
Bob 27-04-2018 09:30:00
我想在数据框中添加一个新列作为 df['Id'] 这样,对于具有相同名称的用户,如果日期时间值的差异不超过 30 分钟,它们将被分配相同的Id 的值,如果日期时间差大于 30 分钟,则分配不同的 id。
我认为它可以通过迭代循环来实现,但我不知道该怎么做。另外,由于我有一个庞大的数据集,有没有更好的方法来做到这一点?
我预期的数据框输出如下:
Name Datetime Id
Bob 26-04-2018 12:00:00 1
Claire 26-04-2018 12:00:00 2
Bob 26-04-2018 12:10:00 1
Bob 26-04-2018 12:20:00 1
Claire 27-04-2018 08:30:00 3
Bob 27-04-2018 09:30:00 4
任何帮助将不胜感激。 谢谢
【问题讨论】:
-
您是如何在结果中获得 12:10 和 12:20 的记录的?
-
@ScottBoston 我手动添加它们以明确说明预期结果