2017-01-21 1 views
0

Hier ist der Code:Valueerror: Unknown Label Typ: während der Verwendung ist cross_validation

import pandas as pd 
import numpy as np 
from sklearn.cross_validation import cross_val_score 
from sklearn.neighbors import KNeighborsClassifier 
data = pd.read_csv('http://www-bcf.usc.edu/~gareth/ISL/Advertising.csv',index_col = 0) 
X = data[['TV','Radio','Newspaper']] 
y = data[['Sales']] 
y = np.asarray(y) 
y = np.ravel(y) 
knn = KNeighborsClassifier(n_neighbors = 5) 
scores = cross_val_score(knn,X,y,cv=10,scoring = 'accuracy') 
print(scores) 

Ich erhalte die folgenden Fehler

C:\Users\Kunal Desai\Anaconda3\lib\site-packages\sklearn\utils\multiclass.py in check_classification_targets(y) 
171  if y_type not in ['binary', 'multiclass', 'multiclass-multioutput', 
172    'multilabel-indicator', 'multilabel-sequences']: 
--> 173   raise ValueError("Unknown label type: %r" % y) 
174 
175 

ValueError: Unknown label type: 

Ich bin neu zu cross_validation und Scikit-Learn

Kann mir jemand helfen?

+0

Ich bekam etwas wie das und es war b/c meine pd.Series war ein Objekt und nicht ein int –

Antwort

0

Wenn Sie eine kontinuierliche Variable vorhersagen möchten, brauchen Sie eine Regression und keine Klassifizierung. KNeighborsRegressor versus KNeighborsClassifier.

+0

Ich versuchte mit KNeighborsRegressor..aber immer noch gibt es den gleichen Fehler –

+0

Eigentlich werden Sie einen anderen Fehler sagen kontinuierlich wird nicht unterstützt. Das liegt daran, dass Sie Scoring = "Genauigkeit" angegeben haben, was für die Regression keinen Sinn ergibt. Sie konnten kein Scoring setzen und es wird der Standard verwendet, der rsquared ist. – simon

+0

Es hat funktioniert !!. Vielen Dank und yeah Sie hatten Recht mit dem Fehler "kontinuierliche wird nicht unterstützt" .. Ich hatte es nicht überprüft ... Ich entfernte Scoring = "Genauigkeit" und es hat gut funktioniert. Noch einmal vielen Dank –

Verwandte Themen