矢量比较和新任务

时间:2013-02-24 13:07:05

标签: matlab classification labels

我想问你一些关于我写的matlab代码的问题,但首先要告诉你我的问题。我有2个矢量,测试标签和预测标签,我想比较它们的分类原因。还有更多我想分配一些新的标签。所以我有类似这样的东西111121111 = 1或1122222222 = 2我想实现。我的代码是

y = [];
for k = 10:length(predictedLabel)-10
    y = [y; newlabel(predictedLabel, k, 5)];
end

并且函数newlabel是

function [nl] = newlabel(x, n, L)
   numClasses = 3;
   x1 = x(n-L:n+L);
   c = zeros(numClasses, 1);
   for k=1:length(x1)
     c(x1(k)) = c(x1(k))+1;
   end
  [~,nl]=max(c);
end

我现在的问题是我的矢量长度

 predictedLabel = 4996*1;
 k=4986*1;
 y=4977*1;

我无法看到我的错误

任何帮助即使是具有概率估计的新想法也会受到赞赏

由于

循环

1 个答案:

答案 0 :(得分:0)

1-当在标量值上使用长度函数时,它给出1,那么for循环内的值变为10:1-10,这是没有意义的。 (如果你想使用递减步骤,你应该提供类似这样的10:-1:1)。

2-如果你想制作一个大小为4996x1的向量,它将是这样的:零(4996,1)或者那些(4996,1)或者像这样。

3-告诉我们你想要的结果和你的错误....描述对我来说并不明显。