Why do I receive 'You must pass class labels as a vector.' error?

15 views (last 30 days)
clear; clc;
X_train = readmatrix("x_train.csv",'NumHeaderLines',1);
X_test = readmatrix("x_test.csv",'NumHeaderLines',1);
y_train = readmatrix("y_train.csv",'NumHeaderLines',1);
y_test = readmatrix("y_test.csv",'NumHeaderLines',1);
model = fitcsvm(X_train, y_train, 'KernelFunction','rbf');
Here's my code. After trying to run I receive this error (error is in attached screenshot):

Answers (1)

Hiro Yoshino
Hiro Yoshino on 15 Oct 2022
It said the y_train is not a vector.
The argument should be any on of: categorical array, string array, character array, logical array, numerical array, cell array.
You should make sure you give right data for x and y respectively.
  4 Comments
Daniil Podtesov
Daniil Podtesov on 15 Oct 2022
I see, in Python Y was two cols (id, boolean), that's why I remained this column. Thank You, I'll try the solution

Sign in to comment.

Categories

Find more on Install Products in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!