我有一个步行信号如下:
我尝试使用回归来回归这两个信号。这是代码:
regMat=zeros(size(walkVec,1),size(walkVec,2));
for i=1:size(data,1)
b=regress(walkAcc', walkVec(i,:)');
regMat(i,:)=walkVec(i,:)-repmat(b,1,length(walkAcc));
regData(i,:)=[data(i,1:(ipt(1)-1)),regMat(i,:), data(i,
(ipt(2)+1):size(data,2) ) ];
end
figure(1),hold on, plot(data(1,:),'r'), plot(regData(1,:)), title
('regressed (b) and raw(r) ')
legend('raw','regressed')
xlabel('samples')
ylabel('Intensity')
你可以看到回归并没有真正起作用。你知道我为什么以及如何解决它?
非常感谢和亲切的问候
答案 0 :(得分:1)
检查regData是否在第一列中有任何数据。如果一个数据高或低几个数量,也会发生这种情况。它在同一图表中可以忽略不计。我用虚拟数据尝试了你的代码并且它可以工作。
答案 1 :(得分:1)
如果您要查找的内容只是回归的直观表示,并且您不需要存储/处理数据,我建议您使用函数plotregression
(https://it.mathworks.com/help/nnet/ref/plotregression.html)