How do I fix error: Index exceeds matrix dimensions?
Información
La pregunta está cerrada. Vuélvala a abrir para editarla o responderla.
Mostrar comentarios más antiguos
I want to make a loop where I calculate the mean of my 35040x12datamatrix for every 24 datapoint, but I get an error: Error using dataset/subsref (line 616) Index exceeds matrix dimensions.
for i=1:24:35040
Xday(icount,:)=mean(A.data(i:24*i,:));
icount=icount+1;
end
What am I doing wrong? Thanks
Respuestas (2)
James Tursa
el 3 de Feb. de 2016
Editada: James Tursa
el 3 de Feb. de 2016
Try this:
for i=1:24:35040
Xday(icount,:)=mean(A.data(i:(i+23),:)); % <-- Changed 24*i to i+23
icount=icount+1;
end
Or a vectorized way:
Xday = reshape(mean(reshape(A.data,24,[])),1460,[]);
Lilja Dahl
el 3 de Feb. de 2016
0 votos
2 comentarios
James Tursa
el 3 de Feb. de 2016
Editada: James Tursa
el 3 de Feb. de 2016
For the loop, did you preallocate Xday? E.g., Xday = zeros(1460,12). And did you initialize icount = 1?
Lilja Dahl
el 12 de Feb. de 2016
La pregunta está cerrada.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!