這是資料:
data = {'col1': [12, 13, 5, 2, 12, 12, 13, 23, 32, 65, 33, 52, 63, 12, 42, 65, 24, 53, 35]}
df = pd.DataFrame(data)
我想創建一個新的 col skipped_mean。只有最后 3 行具有此變數的有效值。它的作用是向后回溯6行,連續3次,取三個數的平均值

怎么做到呢?
uj5u.com熱心網友回復:
您可以使用加權滾動平均方法來做到這一點:
import numpy as np
weights = np.array([1/3,0,0,0,0,0,1/3,0,0,0,0,0,1/3])
df['skipped_mean'] = df['col1'].rolling(13).apply(lambda x: np.sum(weights*x))
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/337838.html
上一篇:python中相互依賴的靜態方法
下一篇:將列中的單元格與指標相關聯
