【发布时间】:2019-05-11 01:39:23
【问题描述】:
假设我有一个如下的熊猫数据框:
>>> df=pd.DataFrame({'dt':pd.to_datetime(['2018-12-10 16:35:34.246','2018-12-10 16:36:34.243','2018-12-10 16:38:34.216','2018-12-10 16:42:34.123']),'value':[1,2,3,4]})
>>> df
dt value
0 2018-12-10 16:35:34.246 1
1 2018-12-10 16:36:34.243 2
2 2018-12-10 16:38:34.216 3
3 2018-12-10 16:42:34.123 4
>>>
我想按'dt' 列对这个数据框进行分组,但我想以一种它认为小于一秒不同的值是相同的方式对它进行分组,在对那些我想总结的分组之后'value' 列基于每个组,并且我希望两个数据帧保持相同的长度,因此小于一秒的差异值将全部是重复值,我到目前为止尝试过:
>>> df.groupby('dt',as_index=False)['value'].sum()
dt value
0 2018-12-10 16:35:34.246 1
1 2018-12-10 16:36:34.243 2
2 2018-12-10 16:38:34.216 3
3 2018-12-10 16:42:34.123 4
>>>
但如您所见,数据框并没有改变,因为它按等效的 'dt' 列值分组。
我想要的输出是:
dt value
0 2018-12-10 16:35:34.246 3
1 2018-12-10 16:36:34.243 3
2 2018-12-10 16:38:34.216 3
3 2018-12-10 16:42:34.123 4
【问题讨论】:
标签: python pandas dataframe sum pandas-groupby