作为PD进口Pandas
data = {'time': ['09:30:00',
'09:31:00',
'09:37:00',
'09:38:00',
'09:39:00',
'09:40:00',
'09:46:00',
'09:47:00',
'09:48:00'],
'sum': [5, 8, 5, 10, 15, 2, 0, 0, 0]}
my_index = pd.MultiIndex.from_arrays([["A"]*6 + ["B"]*3, [1, 1, 1, 2, 2, 2, 1, 1, 1]], names=["ID-A", "ID-B"])
df = pd.DataFrame(data, index=my_index)
如果我使用sum()每隔3分钟重新采样一次,即->
Data=data.set_index(‘time’).groupby([‘ID-A’,‘ID-B’]).resample(‘3min’).sum()
有一个窗口({9:33-9:36},{9:42-9:45})的sum()结果为0。我的 Dataframe 中有一些值实际上计算为0,即使在时间窗口可用之后(9:45-9:48)也是如此。我不希望在没有可用的数据的情况下对时间窗口进行重新采样。我想找出我的总和是0的窗口,但由于重新采样,我的数据中出现了虚假的0,因为这些时间没有可用的数据。
1条答案
按热度按时间zbdgwd5y1#
在
sum
中使用min_count=1
参数,然后删除缺少的值:详情:
编辑:每组解决方案: