MATLAB: 配列の要素・行・列の追加

MATLABでよく使う配列操作をメモしておきます。

行ベクトルの要素の追加

[a b]

>> b = 11:1:20

b =

    11    12    13    14    15    16    17    18    19    20

>> a = 0:1:10

a =

     0     1     2     3     4     5     6     7     8     9    10

>> a = [a b]

a =

     0     1     2     3     4     5     6     7     8     9    10    11    12    13    14    15    16    17    18    19    20

horzcat(A, B)

>> a = 0:1:10

a =

     0     1     2     3     4     5     6     7     8     9    10

>> a = horzcat(a, 11)

a =

     0     1     2     3     4     5     6     7     8     9    10    11

列ベクトルの要素の追加

[a; b]

>> a = (1:1:10)'

a =

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10

>> b = (11:1:20)'

b =

    11
    12
    13
    14
    15
    16
    17
    18
    19
    20

>> [a; b]

ans =

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20

vertcat

>> a = (1:1:10)'

a =

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10

>> b = (11:1:20)'

b =

    11
    12
    13
    14
    15
    16
    17
    18
    19
    20

>> a = vertcat(a, b)

a =

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20

空の配列に追加

バッチ処理して配列を追加した場合がよくあります。 その場合は、まず空の配列を用意します。
>> a = double.empty(0, 10)

a =

  0×10 empty double matrix

行か列のどちらかのサイズを0にしておく必要があります。

それからvertcat / horzcatで行または列を追加します:

>> a = vertcat(a, 1:1:10)

a =

     1     2     3     4     5     6     7     8     9    10

>> a = vertcat(a, 11:1:20)

a =

     1     2     3     4     5     6     7     8     9    10
    11    12    13    14    15    16    17    18    19    20

Adsense広告