我想基于线性回归循环创建一个python pandas数据帧列
这是源数据pandas dataframe df:
campaign | date | shown
A 2015-10-11 363563
A 2015-10-12 345657
A 2015-10-13 345346
B 2015-10-11 23467
B 2015-10-15 357990
C 2015-10-11 97808
我想使用线性回归,并为每个组预测2015-11-30显示的数量。
所以这是我正在寻找的最终新预测数据框:
campaign | Prediction(2015-11-30)
A ...
B ...
C ...
到目前为止我的代码:
df['date_ordinal'] = df['date'].apply(lambda x: x.toordinal())
model = LinearRegression()
X = df[['date_ordinal']]
y = df.shown
model.fit(X, y)
df_results = pd.DataFrame()
for (group, df_gp) in df.groupby('campaign'):
df_results['campaign'] = group
X=df_gp[['date_ordinal']]
y=df_gp.shown
model.fit(X,y)
coefs = list(zip(X.columns, model.coef_))
df_results['prediction'] = model.predict(735947)
df_results
然而,当我运行此代码时,我只得到一个预测,我没有得到一个包含一列的数据帧" group"以及它旁边的预测值。
谢谢!
答案 0 :(得分:1)