我已经训练了我的RandomForestClassifier(),现在正在寻找将我的预测添加到我新导入的测试DF中,我称之为DF_test。在
我已经将我的特性列添加到df_test dataframe中,用于clf.预测要使用的方法。在
我不知道怎么用我的clf.预测()方法,以向df_test添加新列。在
在我的培训资料上:
clf = RandomForestClassifier()
clf.fit(df3[features], df['rounded_score'])
pd.crosstab(clf.predict(df3[features]), df3['rounded_score'])
准备好测试数据:
^{pr2}$我已经尝试了十几次类似以下代码的迭代:
df_test['prediction'] = df_test[something].apply(lambda x: clf.predict(x))
但是predict方法一直告诉我它在寻找一个numpy数组。所以,我尝试了以下方法,效果很好:
mat = df_test[['match_ratio', 'partial_match_ratio', 'tsort_match_ratio']].as_matrix()
for x in mat[:10]:
print clf.predict(x)
但我不知道如何将这些数据作为一个新列放入df_test dataframe中。我最后考虑的是将预测附加到一个常规的python列表中,然后以某种方式将其添加到数据帧中……但这看起来有点混乱。在
假设
df_test[something]
包含这些特性,您可以附加一个新列,其中包含编写的预测相关问题 更多 >
编程相关推荐