因此,我有一个带有多重索引的数据帧,如下所示:
info1 info2 info3
abc-8182 2012-05-08 10:00:00 1 6.0 "yeah!"
2012-05-08 10:01:00 2 25.0 ":("
pli-9230 2012-05-08 11:00:00 1 30.0 "see yah!"
2012-05-08 11:15:00 1 30.0 "see yah!"
...
索引是一个id和一个datetime,表示有关该id的信息何时被记录。我们需要做的是为每个身份证找到最早的记录。我们从dataframe方法中尝试了很多选项,但最终通过循环dataframe来实现:
^{pr2}$这给了我:
x0 x1 x2
('abc-8182', <Timestamp: 2012-05-08 10:00:00>) 1 6 yeah!
('pli-9230', <Timestamp: 2012-05-08 11:00:00>) 1 30 see yah!
我觉得必须有一个简单的“pandas惯用的”方法来做到这一点,而不是像这样在数据框中循环。有?:)
谢谢。在
要获取每组中的第一个项目,可以执行以下操作:
它将在组按groupby分组之前将datetime字段放到列中,因此它将保留在结果中的dataframe中。在
如果需要确保保留最早的时间,可以在调用
^{pr2}$first
之前进行排序:相关问题 更多 >
编程相关推荐