Python/Scikit-Learn - 无法处理多类和连续值的混合

11 浏览
0 Comments

Python/Scikit-Learn - 无法处理多类和连续值的混合

我正在尝试将SGDRegressor拟合到我的数据中,然后检查准确性。拟合工作正常,但预测结果与原始目标数据的数据类型不一致,并且我收到错误消息:

ValueError: 无法处理多类和连续数据的混合

当调用print "准确性:", ms.accuracy_score(y_test,predictions)时。

数据看起来像这样(只有20万多行):

产品ID/日期/产品组1/价格/净价格/购买价格/小时/数量/产品组2
0   107 12/31/2012  10  300 236 220 10  1   108

代码如下:

from sklearn.preprocessing import StandardScaler
import numpy as np
from sklearn.linear_model import SGDRegressor
import numpy as np
from sklearn import metrics as ms
msk = np.random.rand(len(beers)) < 0.8
train = beers[msk]
test = beers[~msk]
X = train [['价格', '净价格', '购买价格','小时','产品ID','产品组2']]
y = train[['数量']]
y = y.as_matrix().ravel()
X_test = test [['价格', '净价格', '购买价格','小时','产品ID','产品组2']]
y_test = test[['数量']]
y_test = y_test.as_matrix().ravel()
clf = SGDRegressor(n_iter=2000)
clf.fit(X, y)
predictions = clf.predict(X_test)
print "准确性:", ms.accuracy_score(y_test,predictions)

我应该做什么不同的?谢谢!

0