Loops 通过在模型字典中循环生成模型预测的数据帧

Loops 通过在模型字典中循环生成模型预测的数据帧,loops,dictionary,scikit-learn,Loops,Dictionary,Scikit Learn,我想循环浏览这样一本词典: models = {'OLS': LinearRegression(), 'Lasso': Lasso(), 'LassoCV': LassoCV(n_alphas=300, cv=3)} 然后我想生成每个模型预测的数据帧 到目前为止,我将其写入了代码,该代码只生成每个结果的数组: predictions = [] for i in models: predictions.append(models[i].fit(

我想循环浏览这样一本词典:

models = {'OLS': LinearRegression(),
         'Lasso': Lasso(),
         'LassoCV': LassoCV(n_alphas=300, cv=3)}
然后我想生成每个模型预测的数据帧

到目前为止,我将其写入了代码,该代码只生成每个结果的数组:

predictions = []

for i in models:   
    predictions.append(models[i].fit(X_train,y_train).predict(X_test))
最后的结果是,我需要一个数据帧,其中每个列都由字典中的键标记,结果值与列中的模型键名称关联


谢谢大家!

您可以直接将
预测
插入数据帧,而不是将
预测
附加到列表中

代码:

import pandas as pd
models = {'OLS': LinearRegression(),
         'Lasso': Lasso(),
         'LassoCV': LassoCV(n_alphas=300, cv=3)}
df = pd.DataFrame()
for i in models:
  df[i] = models[i].fit(X_train,y_train).predict(X_test)   

非常感谢。在我能流利地用python思考之前,我还有很长的路要走。非常感谢您的帮助:-)如果这回答了您满意的问题,请随意接受并投票。有关更多信息,请参阅。