【问题标题】:Grouping Pandas Dataframe with conditions使用条件对 Pandas 数据框进行分组
【发布时间】:2016-09-14 20:30:24
【问题描述】:

我有以下数据集:

我想根据 userid、deviceid 和 ticketid 对数据进行分组。 TicketStartTime 应该是该 Ticketid 的最早条目。 TicketEndTime 应该是该 TicketID 的最新条目。 TicketStatus 应该是与最新的 TicketEndTime 对应的那个。

所需的数据集:

【问题讨论】:

  • 你能展示你的努力吗?所以不是代码编写服务,你也可以发布原始数据,代码来重现你的df

标签: python datetime pandas


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-28
    • 2022-01-01
    • 2019-06-27
    • 2022-12-09
    • 2018-04-13
    • 2020-10-22
    • 2015-09-26
    相关资源
    最近更新 更多