滚动条件均值
Conditional mean by rolling
Data flag
2017-01-01 17.2 False
2017-01-02 17.0 False
2017-01-03 16.8 False
2017-01-04 18.3 False
2017-01-05 19.1 True
...
2017-12-28 20.1 False
2017-12-29 19.8 False
2017-12-30 18.9 False
2017-12-31 19.5 False
有一个 pandas 数据框,其中包含值和标志。
我想通过滚动(window=30)计算平均值,如果标志是 "NOT TRUE".
您可以使用 pandas.rolling_mean()
,同时将数据框子集化为仅包含 df.flag
为假的条目(~
运算符反转布尔系列的真值,获取所有值 df.flag
是 False
).
pandas.rolling_mean(df[~df.flag], window=30)
Data flag
2017-01-01 17.2 False
2017-01-02 17.0 False
2017-01-03 16.8 False
2017-01-04 18.3 False
2017-01-05 19.1 True
...
2017-12-28 20.1 False
2017-12-29 19.8 False
2017-12-30 18.9 False
2017-12-31 19.5 False
有一个 pandas 数据框,其中包含值和标志。 我想通过滚动(window=30)计算平均值,如果标志是 "NOT TRUE".
您可以使用 pandas.rolling_mean()
,同时将数据框子集化为仅包含 df.flag
为假的条目(~
运算符反转布尔系列的真值,获取所有值 df.flag
是 False
).
pandas.rolling_mean(df[~df.flag], window=30)