I am trying to do svm model training and it gives this error:

 ValueError: Found input variables with inconsistent numbers of samples: [91, 212]


target = data.target

##splitiing data into training and test data
X_train, X_test, y_train, y_test = train_test_split(train, target, test_size=0.3, random_state=101)
print("X_train size ===>", X_train.shape)
print("y_train size ===>", y_train.shape)
print("X_test size ===>", X_test.shape)
print("y_test size ===>", y_test.shape)

#Create a svm Classifier

clf = svm.SVC(kernel='linear')

#training the model using the training sets

clf.fit(X_train, y_train)

#predict the response for test dataset

y_pred = clf.predict(X_train)
  • $\begingroup$ Please look at here. $\endgroup$ – ebrahimi Jun 13 at 7:12

This error usually indicates your train and test in the train_test_split() function call are different sizes. You may need to reshape one to get them to match. Look at the shapes of train and test to see what is the problem.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.