使用2个索引进行循环

1视图(最近30天)
Morten Jørgensen
Morten Jørgensen 2019年3月21日
Hi
如果要包含另一个索引,我该如何优化此循环
mHome is an 15001x28 array
mBall is an 15001x3 array
fori=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
fori=1:length(mHome)
fork = 1:大小(MHOME,2)
output1(i,k)=pdist([mHome(i,k);mBall(i,1:2)]);
end
end
3 Comments
Morten Jørgensen
Morten Jørgensen 2019年3月21日
mBall is a 15001x3 array.
但是我只使用前两个彩色
my output should be a 15001x14 array

Sign in to comment.

Accepted Answer

Thorsten
Thorsten 2019年3月21日
fori=1:length(mHome)
fork=1:2:size(mHome,2)-1
output1(i,k)=pdist([mHome(i,k:k+1);mBall(i,1:2)]);
end
end
1 Comment
Morten Jørgensen
Morten Jørgensen on 22 Mar 2019
many thanks.
the only problem is that the output is a 15001x27 array and it should be a 15001x27 array.
right now everyother column is a colum with 0

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

开始狩猎!