How to resolve the "Index exceeds matrix dimensions" error ?
Mostrar comentarios más antiguos
if true
data = getdata(vid,50,'double','cell');
for i=1:5:100
data{i}(:,:,1)=(data{i}(:,:,1))+(data{i+1}(:,:,1))+(data{i+2}(:,:,1))+ ...
(data{i+3}(:,:,1))+(data{i+4}(:,:,1))/5;
data{i}(:,:,3)=(data{i}(:,:,3))+(data{i+1}(:,:,3))+(data{i+2}(:,:,3))+...
(data{i+3}(:,:,3))+(data{i+4}(:,:,3))/5;
data{i}(:,:,2)=(data{i}(:,:,2))+(data{i+1}(:,:,2))+(data{i+2}(:,:,2))+...
(data{i+3}(:,:,2))+(data{i+4}(:,:,2))/5;
end
end
[EDITED, Jan, code formatted - Please do this by your own, thanks!]
Respuestas (3)
Dishant Arora
el 26 de Ag. de 2012
dbstop if error
use this before executing,u will get an idea where exactly this error occurs
9 comentarios
sadhna
el 26 de Ag. de 2012
Dishant Arora
el 26 de Ag. de 2012
data = getdata(vid,50,'double','cell');
from this what i conclude is that you have 50 samples/elemesnts in cell array data. and indices in your code goes above 50 and that results in error. you should once again take look at the loop and reassign i.
Jan
el 27 de Ag. de 2012
@sadhna: "it's not working" is not helpful for us. Please explain all necessary details, e.g. the line which causes the error, the size of the processed array and the value of i. Finally these informations should allow you to solve the problem by your own.
sadhna
el 27 de Ag. de 2012
sadhna
el 27 de Ag. de 2012
Jan
el 27 de Ag. de 2012
Ok, I assume that this is the line, which causes the problem. Correct? What is the value of "i"? What is the size of "data{i}" and "data{i+5}". Come on, Sadhna, start to debug your code and show some effort to solve your problem.
sadhna
el 1 de Sept. de 2012
Dishant Arora
el 1 de Sept. de 2012
change the loop form 1 to 50
for i=1:5:50
serena dsouza
el 3 de Ag. de 2020
Hi, I am getting same error in this following loop but on selected samples , even though they are of same length, Only Some of them giving error. Here, I am trying to do framing of audio signal.Can anyone help me in this.Thank you.
n=round(length(xOut)/no_frames); %find how many samples will each frame contain
P=zeros(n,no_frames);
for j=0:no_frames-1
P(:,j+1)=xOut(1+n*j:n*(j+1));
end
maryam ahmad
el 2 de Jun. de 2021
Hi i want to 3D plot of x, y anad z and for that i have table of 1000x1 (name 'Rouser1') and have 3 variables as following
x(n) = seq (n)-seq (n-1);
y(n) = seq (n-1) - seq (n-2);
z(n) = seq (n-2) - seq (n-3);
% in this seq will be the 'values of Rouser1' and Variable of Rouser1 is 'VarName1'
% so how im suppose to make a 3D plot?
Categorías
Más información sobre Matrix Indexing en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!