gpt4 book ai didi

python - 如何计算 pandas 的平均时间?

转载 作者:太空宇宙 更新时间:2023-11-03 14:26:52 25 4
gpt4 key购买 nike

我有一个如下所示的数据框(每个 date row 描述每个事件发生的时刻):

                          date
93286 2017-11-24 20:44:51.571
93287 2017-11-24 20:45:01.571
93288 2017-11-24 20:45:11.664
93289 2017-11-24 20:45:21.664
93290 2017-11-24 20:45:23.758
93291 2017-11-24 20:45:34.071
93292 2017-11-24 20:45:39.164
93293 2017-11-24 20:45:44.664
93294 2017-11-24 20:45:58.664
93295 2017-11-24 20:46:54.774
93296 2017-11-24 20:46:55.571

我的目标是计算每分钟的平均次数。所以我想我首先需要从当前日期减去先前日期 df['diff'] = df['date'] - df['date'].shift(1)

                          date  diff
93286 2017-11-24 20:44:51.571 NaT
93287 2017-11-24 20:45:01.571 00:00:10
93288 2017-11-24 20:45:11.664 00:00:10.093
93289 2017-11-24 20:45:21.664 00:00:10
93290 2017-11-24 20:45:23.758 00:00:02.094
93291 2017-11-24 20:45:34.071 00:00:10.313
93292 2017-11-24 20:45:39.164 00:00:05.093
93293 2017-11-24 20:45:44.664 00:00:05.5
93294 2017-11-24 20:45:58.664 00:00:14
93295 2017-11-24 20:46:58.774 00:00:00.11
93296 2017-11-24 20:46:59.571 00:00:00.797

但现在我不知道如何获得显示每分钟平均时间的结果,例如:

               date     mean
2017-11-24 20:45:00 8.386625

我尝试使用pivot_table ,但这样不行。

>>> df.pivot_table(index=[pd.Grouper(key='date', freq='1min')],aggfunc='mean')
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "d:\python36-32\lib\site-packages\pandas\core\generic.py", line 3081, in __getattr__
return object.__getattribute__(self, name)
AttributeError: 'Series' object has no attribute 'pivot_table'

如何使用此数据框计算平均时间?

最佳答案

尝试 aggfunc=pd.Series.mean'mean' 可能仅适用于数字数据类型:

df.pivot_table(index=pd.Grouper(key='date', freq='1min'),aggfunc=pd.Series.mean)

diff
date
2017-11-24 20:44:00 NaT
2017-11-24 20:45:00 00:00:08.386625
2017-11-24 20:46:00 00:00:28.453500

关于python - 如何计算 pandas 的平均时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47572650/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com