我有一个数据框,如下所示
我正在尝试使用21的滚动窗口来使用LinearRegression模型计算截距。这些计算将在海量数据集上执行。我正在寻找梳理熊猫滚动操作和线性回归的方法。
我已经尝试过类似的方法,对我来说这效率很低!想知道解决此问题的完美方法
from sklearn.linear_model import LinearRegression
import np
for holding_id in holding_ids:
intercepts = []
holding_p = df[holding_id].tolist()
for i in range(21, len(holding_p)):
lrm = LinearRegression()
reg = lrm.fit(np.array(b_array[i-21:i]).reshape(-1, 1),holding_p[i-21:i])
intercepts.append(reg.intercept_)
beta_intercept[holding_id] = intercepts