Я хочу иметь возможность выполнять скользящее среднее в столбце данных на основе значений, помеченных как True в отдельном столбце. Ниже приведен пример набора данных.
Data Condition
2020-01-01 0:00 2.0 False
2020-01-01 0:01 2.0 False
2020-01-01 0:02 732.1 True
2020-01-01 0:03 734.2 True
2020-01-01 0:04 733.3 True
2020-01-01 0:05 731.2 True
2020-01-01 0:06 2.0 False
2020-01-01 0:07 2.0 False
...
2020-06-15 23:52 2.0 False
2020-06-15 23:53 732.1 True
2020-06-15 23:54 734.2 True
2020-06-15 23:55 733.3 True
2020-06-15 23:56 731.2 True
2020-06-15 23:57 2.0 False
2020-06-15 23:58 2.0 False
2020-06-15 23:59 2.0 False
Мой ожидаемый результат с размером окна 3 для столбца данных будет следующим:
[2.0, 2.0, 733.15, 733.2, 732.9, 732.25, 2, 2, ..., 2.0, 733.15, 733.2, 732.9, 732.25, 2.0, 2.0, 2.0].
Таким образом, по сути, для каждой строки будет использоваться среднее значение строки выше и ниже этой строки, а также строки, о которой идет речь, но всегда исключая числа, когда оно ложно.
Вот код, который я нашел, за исключением того, что он не для текущих панд.
pandas.rolling_mean(df[df.Condition], window=30)
Я нашел это здесь: Условное среднее путем прокрутки
Мы будем благодарны за любую помощь или информацию по этому поводу!
window=3
в этом случае? - person Quang Hoang   schedule 30.06.2020