は、私は、デフォルトの列方向結果ではなくリシェイプMATLABベクトル
1 2 3
4 5 6
を得るために、例えば reshape(a, 2, 3)
の行ごとの方法でそれを再形成んどのように、私はマトリックスa = [1 2 3 4 5 6];
があると
これはおそらくこれを達成するためのinbuilt関数を持っていると思います。私はすでにこれを完全に行う関数を実装しています...しかし、より短く、より洗練されたMATLABの方法はありますか?ありがとう。
function y = reshape2(x, m, n)
y = zeros(m, n);
ix = 0;
for i = 1:m
for j = 1:n
ix = ix + 1;
y(i, j) = x(ix);
end
end
end
ちょうど今、あなたの質問を削除するための乾杯 - 私は答えを準備する10分を費やしていました。私は誰か他の人にとって役に立つかもしれない。 (私はそれが良い質問だと思った)。 –
ああ私は質問を再投稿します@MatthewTaylor – Mortada