using 2 indexs for loop
Mostrar comentarios más antiguos
Hi
how can i optimize this loop, if i want to include another indexing
mHome is an 15001x28 array
mBall is an 15001x3 array
for i=1:length(mHome)
output1(i,1)=pdist([mHome(i,1:2);mBall(i,1:2)]);
output1(i,2)=pdist([mHome(i,3:4);mBall(i,1:2)]);
output1(i,3)=pdist([mHome(i,5:6);mBall(i,1:2)]);
output1(i,4)=pdist([mHome(i,7:8);mBall(i,1:2)]);
output1(i,5)=pdist([mHome(i,9:10);mBall(i,1:2)]);
output1(i,6)=pdist([mHome(i,11:12);mBall(i,1:2)]);
output1(i,7)=pdist([mHome(i,13:14);mBall(i,1:2)]);
output1(i,8)=pdist([mHome(i,15:16);mBall(i,1:2)]);
output1(i,9)=pdist([mHome(i,17:18);mBall(i,1:2)]);
output1(i,10)=pdist([mHome(i,19:20);mBall(i,1:2)]);
output1(i,11)=pdist([mHome(i,21:22);mBall(i,1:2)]);
output1(i,12)=pdist([mHome(i,23:24);mBall(i,1:2)]);
output1(i,13)=pdist([mHome(i,25:26);mBall(i,1:2)]);
output1(i,14)=pdist([mHome(i,27:28);mBall(i,1:2)]);
end
% I have tried this but it does not work
for i=1:length(mHome)
for k=1:size(mHome,2)
output1(i,k)=pdist([mHome(i,k);mBall(i,1:2)]);
end
end
3 comentarios
madhan ravi
el 21 de Mzo. de 2019
output1(k,1)=pdist([mHome(k,(k*2)-1:k*2);mBall(k,1:2)]);
% Replaced i with k, assuming you have preallocated before the loop (good practice).
Index in position 2 exceeds array bounds (must not exceed 28).
Error in Velocity (line 76)
output2(k,1)=pdist([mHome(k,(k*2)-1:k*2);mBall(k,1:2)]);
i get this error mHome is a 15001x28 array
madhan ravi
el 21 de Mzo. de 2019
Even after the below?
for k=1:size(mHome,2)
output1(k,1)=pdist([mHome(k,(k*2)-1:k*2);mBall(k,1:2)]);
end
What the size of mBall?
Morten Jørgensen
el 21 de Mzo. de 2019
Respuesta aceptada
Más respuestas (0)
Categorías
Más información sobre Loops and Conditional Statements 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!