0

私は 5 x 2611 + 1 ぶら下がっているマトリックスを持っています。同じマトリックス96x136マトリックスから、136 が完了するまで各行をコピーすることを考えていました。ただし、どこから始めればよいのか、どの機能が最適かはわかりません。例えば:

 [2 3 5 6 7;
 8 9.555 10.888 20.888 3.5;
 .........................;
  ......................   5]

したがって、行列は 5*2611 + 1 のようになります。上記の次元は最後に 2611*5 であるため、mat は 1 行 1 列でそれを受け入れないことがわかっています。最後の要素が 1 つあります。

136列の終わりまで行のように変更 2 3 5 6 7 8 9.555 10.888 20.888 3.5 ........ 5 し、同じ順序で新しい行を開始します。

4

2 に答える 2

2

要素のマトリックスがある場合は、次の5*2611ことができます。

  1. たとえば、1行のベクトルに変形します。vec1 = reshape(mat1',1,5*2611)
  2. 余分な価値に取り組む、例えばvec1 = [vec1 dangler]
  3. 再びマトリックスに形を変えるmat2 = reshape(vec1,96,136)

そして、私が転置を正しく行った場合、あなたはあなたが探しているマトリックスを持っています。転置が正しく行われなかった場合は、@Shaiがやって来て修正します。

于 2013-03-05T11:50:27.177 に答える
2

転置とを使用する必要がありますreshape

A = [ 2 3 5 6 7 8;...
      9 10 11 12 13];
B = reshape( A.', [3 4] ).';

Bの行スタッキングに従って順序付けられた要素をもつサイズ [4 3] になりAます。

于 2013-03-05T06:15:29.903 に答える