Почему я получаю это значение ошибки в модели KNN? - PullRequest
0 голосов
/ 26 июня 2018

Я применяю модель KNN к данным о раке молочной железы в Висконсине, но каждый раз, когда я запускаю код, я получаю эту ошибку:

ValueError: Найдены входные переменные с непоследовательным количеством выборок: [559, 140]

import numpy as np
import pandas as pd
from sklearn import preprocessing,cross_validation,neighbors

df=pd.read_csv('breast-cancer-wisconsin.data.txt')
df.replace('?',-99999,inplace=True)
df.drop(['id'],1,inplace=True)

X=np.array(df.drop(['class'],1))
y=np.array(df['class'])

X_train, y_train, X_test, y_test = cross_validation.train_test_split(X, y, test_size=0.2)

clf = neighbors.KNeighborsClassifier()
clf.fit(X_train, y_train)
accuracy=clf.score(X_test, y_test)
print(accuracy)

example=np.array([4,2,1,1,1,2,3,2,1])
example=example.reshape(-1,1)

prediction=clf.predict(example)
print(prediction)

1 Ответ

0 голосов
/ 26 июня 2018

Вывод cross_validation.train_test_split, согласно документации , должен быть X_train, X_test, y_train, y_test. Измените эту строку в своем коде на:

X_train,X_test,y_train,y_test=cross_validation.train_test_split(X,y,test_size=0.2)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...