【问题标题】:Calculate avg time between multiple dates计算多个日期之间的平均时间
【发布时间】:2021-09-15 16:05:32
【问题描述】:

我有一个如下所示的数据框:

Part Date
1 9/1/2021
1 9/8/2021
1 9/15/2021
2 9/1/2020
2 9/1/2021
2 9/1/2022

数据框已按部分排序,然后按日期排序。

我试图在Part 列分组的每个日期之间找到average days

所以期望的输出是:

Part Avg Days
1 7
2 365

您将如何处理这些数据以实现所需的输出?

我们将不胜感激任何帮助!

谢谢

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    您可以groupby“日期”,使用apply+diff获取连续行之间的时间增量,并获取mean

    (df.groupby('Part')['Date']
       .apply(lambda s: s.diff().mean())
       .to_frame()
       .reset_index()
    )
    

    输出:

    Part     Date         
    1      7 days
    2    365 days
    

    【讨论】:

    • 谢谢!!这提供了我正在寻找的数据。
    猜你喜欢
    • 1970-01-01
    • 2021-01-16
    • 2019-07-12
    • 1970-01-01
    • 2021-10-19
    • 1970-01-01
    • 1970-01-01
    • 2012-02-08
    • 2014-09-24
    相关资源
    最近更新 更多