आप ईद क्षेत्र groupby
कर सकते हैं:
In [11]: df
Out[11]:
Id Date
0 1 2012-03-01 00:00:00
1 1 2013-04-08 00:00:00
2 2 2013-01-17 00:00:00
3 2 2013-05-04 00:00:00
4 2 2012-10-30 00:00:00
5 3 2013-01-03 00:00:00
In [12]: g = df.groupby('Id')
आप आदेश देने के बारे में निश्चित नहीं हैं, तो आप पंक्तियों के साथ कुछ कर सकते हैं:
In [13]: g.agg(lambda x: x.iloc[x.Date.argmax()])
Out[13]:
Date
Id
1 2013-04-08 00:00:00
2 2013-05-04 00:00:00
3 2013-01-03 00:00:00
जो प्रत्येक समूह के लिए पंक्ति पकड़ लेता है सबसे बड़ी (नवीनतम) तिथि (Argmax भाग) के साथ।
आप पता था कि अगर वे आपको पिछले (या पहले) प्रविष्टि ले सकता है में थे:
In [14]: g.last()
Out[14]:
Date
Id
1 2013-04-08 00:00:00
2 2012-10-30 00:00:00
3 2013-01-03 00:00:00
(नोट: वे क्रम में नहीं कर रहे हैं, तो यह इस मामले में काम नहीं करता है!)
स्रोत
2013-06-10 18:41:35
वे तिथि सबमिट की गई तारीख का प्रतिनिधित्व करते हैं, मुझे केवल हाल ही में सबमिट की जाने वाली आवश्यकता है क्योंकि यह पुरानी पंक्तियों को पार करता है। – ChrisArmstrong