根据条件对Pandas Dataframe进行分组

时间:2016-05-18 11:23:29

标签: python datetime pandas

我有以下数据集: enter image description here

我想基于userid,deviceid和ticketid对数据进行分组。 TicketStartTime应该是该Ticketid最早的条目。 TicketEndTime应该是该TicketID的最新条目。 TicketStatus应该是与最新的TicketEndTime相对应的。

所需数据集: enter image description here

1 个答案:

答案 0 :(得分:0)

您可以在groupby对象上使用agg方法来选择每列的聚合:

df.groupby(['UserID', 'DeviceID', 'TicketID']).agg({
    'TicketStatus': 'last',
    'TicketStartTime': 'first',
    'TicketEndTime': 'last'
}).reset_index()