找到具有不一致样本数的输入变量:[489,1890] KNeighborsClassifier.fit()

时间:2017-04-18 16:25:25

标签: python scikit-learn

只是尝试做一个简单的最近邻居分类,但我对这个错误感到困惑:

neigh = KNeighborsClassifier(n_neighbors=3)
neigh.fit(X_train, y_train)

产生:

ValueError: Found input variables with inconsistent numbers of samples: [489, 1890]

有人解释说我错过了吗?

2 个答案:

答案 0 :(得分:1)

错误告诉您X_trainy_train样本的大小不同。重新检查您的列车测试拆分并确保您正确执行它。例如,如果您使用sklearn.model_selectin.train_test_split,则可以这样做:

X_train, X_test, y_train, y_test = train_test_split(X, y)
neigh = KNeighborsClassifier(n_neighbors=3)
neigh.fit(X_train, y_train)

答案 1 :(得分:1)

请检查train_test_split参数的顺序,它应该完全低于顺序

X_train, X_test, y_train, y_test=train_test_split(X,y)

错误的订单会产生错误" ValueError:找到包含不一致数量的输入变量......"