ValueError:未知标签类型:应用Random Forrest时'连续'

时间:2017-12-22 13:32:48

标签: python pandas dataframe scikit-learn

我有一个数据集df_train和一些标签df_train_labels

print(df_train.shape)
print(df_train_labels.shape)

输出:

(1460, 6)
(1460,)

print(df_train[0:4])
print(df_train_labels[0:4])

输出

   OverallQual  GrLivArea  GarageCars  TotalBsmtSF  FullBath  YearBuilt
0            1   0.000000           1            1         1          1
1            1   0.000000           0            1         0          1
2            0   0.693147           0            2         0          2
3            0   1.098612           1            3         1          3
0    2.505338
1    2.493950
2    2.510994
3    2.472277
Name: SalePrice, dtype: float64

我想在这个数据上拟合一个模型:

from sklearn.ensemble import RandomForestClassifier
clf = RandomForestClassifier(n_estimators=10)
clf = clf.fit(df_train, df_train_labels)

但是,最后一行失败并出现此错误:

raise ValueError("Unknown label type: %r" % y_type)
ValueError: Unknown label type: 'continuous'

我看了herehere,但我没有看到任何与我的问题相关的信息。

知道可能出现什么问题吗?

2 个答案:

答案 0 :(得分:0)

RandomForestClassifier似乎无法使用浮点数,因此我使用RandomForestRegressor代替。

答案 1 :(得分:0)

如果您的解决方案需要分类而不是回归,那么我建议您使用非连续标签列表(例如[0,1,2,3])并创建一个到原始标签列表的一对一映射。