Matrix dimensions must agree error

2 次查看(过去 30 天)
t = sample.VarName1;
X = sample.VarName2;
indexOfComments = find(~isnan(sample.VarName3));
timeofcomment = sample.VarName1(indexOfComments);
t_end = t(indexOfComments);
indexTrim = t >= t_end - 5 & t <= t_end + 5 ;
t = t(indexTrim);
X = X(indexTrim);
Fs = 1/(t(2)-t(1));
I am getting an error 'Matrix dimensions must agree.'
Error in Untitled2 (line 106)
indexTrim = t >= t_end - 5 & t <= t_end + 5 ;
Please help!!
  2 个评论
Dennis
Dennis 2018-8-7
t and t_end might both be vectors of different sizes. Then you can't check if t>=t_end.
Akshat Shrivastava
Hello Dennis, t is the vector which stores one column from the text file (which represents time). t_end is the vector which stores 'index number' of the rows which has comment on the third column of the text file. can you tell me what should i do to make it work? Thank you.

请先登录,再进行评论。

采纳的回答

Dennis
Dennis 2018-8-7
I hope i understood your code right, this might help:
t = sample.VarName1;
X = sample.VarName2;
indexOfComments = find(~isnan(sample.VarName3));
timeofcomment = sample.VarName1(indexOfComments);
t_end = t(indexOfComments);
r=zeros(numel(t_end)*11,1);
for i=1:numel(t_end)
r((i-1)*11+1:(i-1)*11+11)=t_end(i)-5:t_end(i)+5;
end
r=unique(r(r>0))
t=t(r(r<=numel(t)));
X = X(r(r<=numel(X)));
Fs = 1/(t(2)-t(1));

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!