Not enough input arguments.
显示 更早的评论
Hi, I am very new to matlab and need some basic help.
function classifier = learnknn(k, d, m, Xtrain, Ytrain)
classifier = {k, d, m, Xtrain, Ytrain};
end
I get the error " Not enough input arguments. "
But, I cannot change the first line of this code. Only the body of the function can be modified.
Thank you.
7 个评论
Walter Roberson
2020-10-24
How are you invoking the function?
danielle sisserman
2020-10-24
KSSV
2020-10-24
Don't press the run button. Go to the folder where function is present....define the input variables and then call the function.
k = yourvalue ;
d = yourvalue ;
m = yourvalue ;
Xtrain = your data ;
Ytrain = your data ;
classifier = learnknn(k, d, m, Xtrain, Ytrain) ;
But what is the use of the function?
danielle sisserman
2020-10-26
Walter Roberson
2020-10-26
function varargin = learnknn(varargin)
is code that implements returning a cell containing the input arguments.
danielle sisserman
2020-11-5
Stephen23
2020-11-5
"so if I understand, function classifier = learnknn(k, d, m, Xtrain, Ytrain) is actually all I need?"
No, the syntax that Walter Roberson showed replaces your entire function. It uses the special varargin variable:
"and what if I wanted the classifier function to return a diferent datastructure than a cell? for example, if I wanted to return a list object containing the input objects."
MATLAB does not have a "list" type:
回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Classification Ensembles 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!