Python Pandas时间序列分组不符合预期的行为

时间:2018-12-25 11:10:49

标签: python pandas

我有一个看起来像这样的数据框:

df.head() enter image description here df.dtypes

enter image description here

df.index.dtype

enter image description here

问题在于重新采样数据并在不同时间段获得正确的结果。

例如:

# count frame drops per second - works correctly
df.to_period(freq='S').groupby('ts')['frame_drop_issue'].sum()

enter image description here

# count frame drops per minute - works correctly
df.to_period(freq='T').groupby('ts')['frame_drop_issue'].sum()

enter image description here

但是,如果我尝试进行2秒钟的汇总,则会得到错误的结果(类似于一秒钟的结果)

# count frame drops per 2 seconds- wrong result
df.to_period(freq='2S').groupby('ts')['frame_drop_issue'].sum()

enter image description here

我在做什么错了?

1 个答案:

答案 0 :(得分:1)

to_period可能不适用于倍频。这仍然是一个未解决的问题 https://github.com/pandas-dev/pandas/issues/14070。 相反,您可以使用resample

df.resample('2S')['frame_drop_issue'].sum()