Python / Scikit-Learn: no se puede manejar la mezcla de multiclase y continua

Estoy tratando de ajustar un SGDRegressor a mis datos y luego verificar la precisión. El ajuste funciona bien, pero luego las predicciones no están en el mismo tipo de datos (?) Que los datos de destino originales, y aparece el error

ValueError: Can't handle mix of multiclass and continuous 

Al llamar, print "Accuracy:", ms.accuracy_score(y_test,predictions) .

Los datos se ven así (solo 200 mil + filas):

 Product_id/Date/product_group1/Price/Net price/Purchase price/Hour/Quantity/product_group2 0 107 12/31/2012 10 300 236 220 10 1 108 

El código es el siguiente:

 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 [['Price', 'Net price', 'Purchase price','Hour','Product_id','product_group2']] y = train[['Quantity']] y = y.as_matrix().ravel() X_test = test [['Price', 'Net price', 'Purchase price','Hour','Product_id','product_group2']] y_test = test[['Quantity']] y_test = y_test.as_matrix().ravel() clf = SGDRegressor(n_iter=2000) clf.fit(X, y) predictions = clf.predict(X_test) print "Accuracy:", ms.accuracy_score(y_test,predictions) 

¿Qué debo hacer de manera diferente? ¡Gracias!

La exactitud es una métrica de clasificación. No puedes usarlo con una regresión. Consulte la documentación para obtener información sobre las diversas métricas.

El puntaje de precisión es solo para problemas de clasificación. Para los problemas de regresión puede usar: Puntuación R2, MSE (Error cuadrático medio), RMSE (Error cuadrático medio).