我想知道如何在时间序列的滚动窗口中获得最频繁的值,即像
df.rolling(window = 2).rolling.count_values().idxmax()
由于对于数据框的列,可以使用
df["value"].count_values().idxmax()
但是,我只收到一条错误消息,内容为 'Rolling' object has no attribute 'count_values'
答案 0 :(得分:0)
使用 rolling().apply
和 mode 方法:
df.rolling(window = 3).apply(lambda x: x.mode()[0])
x
将是一个长度等于 window 的 pd.Series
对象。 mode
方法将返回最常见值的列表。 lambda
将返回模式列表中的第一项。