【问题标题】:Finding last transaction date of set of customers in each year and pull value查找每年一组客户的最后交易日期并提取价值
【发布时间】:2020-10-13 08:57:47
【问题描述】:

我有 10000 个客户的 df,我正在尝试查找每个客户每年的最后交易日期和金额。使用以下内容,我可以到达每位客户的最后日期,但无法在一年内找到它。

df[df.groupby('customer').date.transform('max')

关于如何找出这一点的任何想法

谢谢, 斯里尼瓦斯

【问题讨论】:

  • 添加 df 的 sn-p 结果
  • 每个日历年(即 2020、2019、2018 等)?或每年数据的第一天为第 1 天

标签: python pandas group-by


【解决方案1】:

假设您的数据框中有一个名为 TransactionDate 的列,其中交易日期采用日期时间格式,您可以这样做:

df['LastTransDateByYear'] = df.groupby(['Customer',df.TransactionDate.dt.year])['TransactionDate'].transform(max)

这会将列添加到数据框中,其日期是给定年份的最后交易日期。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-24
    • 2017-11-22
    • 2021-03-04
    • 2020-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多