我有兴趣使用k-NN
方法来训练我的数据集,然后对样本数据集进行预测。我有表(tb
)每个包含两个大小为1X2000的变量。让我们为了简单起见,
训练数据集X = tb(1:1500,1)
Y = tb(1:1500,2); % both X and Y are training datasets
现在样本测试为,
x = tb(1501:2000,1);
y= tb(1501:2000,2);
现在我想使用k-NN
方法预测给定y
值的新x
值。
我编写的代码如下:
mdl = fitcknn(X,Y,'NumNeighbors',150,'Standardize',1);
predictedY = predict(mdl,x);
plot(x,predictedY)
当我运行代码时,我得不到正确的结果。
根据一些谷歌搜索,我发现这个代码不是用于回归而是用于分类。我不知道k-NN如何用于回归。任何帮助?
答案 0 :(得分:0)
您不应该使用ClassificationKNN.fit
- 它将在以后的版本中删除。相反,您可以使用fitcknn
:
model = fitcknn(X,Y,'NumNeighbors',150);