ロードするデータをフォーマットするために使用されるネストされたfor-loopsが2つあります。私は彼らの所望のサイズに事前に割り当てないMATLABで2つのネストされたfor-loopsをベクトル化します
data = magic(20000);
data = data(:,1:3);
for i=0:10
for j=0:10
data_tmp = data((1:100)+100*j+100*10*i,:);
vx(:, i+1,j+1) = data_tmp(:,1);
vy(:, i+1,j+1) = data_tmp(:,2);
vz(:, i+1,j+1) = data_tmp(:,3);
end
end
配列vx
、vy
とvz
:ループは次のような構成を持っています。しかし、効率を高めるためにループをベクトル化する方法がありますか?私はそれが第二のループの最初の行、data((1:100)+100*j+100*10*i,:)
のためのケースであると確信していない、これを行うには良い方法はありますか?それはあなたが例えばk<10
ためi=k, j=10
とi=k+1, j=0
でループ
にインデックスを繰り返していることが判明し
これは素晴らしい提案です。ありがとうございます!非常に役立ちます – BillyJean