MATLAB ブラケット
このチュートリアルでは、角かっこを使用して行列を作成し、中かっこを使用して MATLAB でセル配列を作成する方法について説明します。
MATLAB で角括弧を使ってベクトルや行列を作る
角括弧を使用して、MATLAB で任意のサイズのベクトルと行列を作成できます。たとえば、角括弧を使用して、整数のベクトルと行列、および文字配列の行列を作成しましょう。以下のコードを参照してください。
myVector = [1 2 3]
myMatrix = [1 2 3; 5 6 7]
char_matrix = ['a';'b';'c';'d';'f']
出力:
myVector =
1 2 3
myMatrix =
1 2 3
5 6 7
char_matrix =
5×1 char array
'a'
'b'
'c'
'd'
'f'
ベクトルと整数の行列、および文字配列の行列を作成しました。各要素は、マトリックス内の特定のインデックスに保存されます。マトリックスのインデックスを使用して、マトリックスに存在する要素を抽出または変更できます。インデックスは MATLAB では 1 から始まります。たとえば、myVector
のインデックス 1 に存在する値を取得し、抽出された値で myVector
のインデックス 2 に存在する値を変更してみましょう。以下のコードを参照してください。
myVector = [3 2 6]
value = myVector(1)
myVector(2) = value
出力:
myVector =
3 2 6
value =
3
myVector =
3 3 6
インデックス 1 に存在する値である 3 を抽出し、それをインデックス 2 の myVector
に保存しました。ご覧のとおり、ベクトルの要素が変更されています。マトリックスを使用してこれを行うことができますが、1つのインデックスではなく、行に 2つの値、列に 1つの値を指定する必要があります。1 の行列を作成する ones()
関数と 0 の行列を作成する zeros()
関数。行列のサイズを取得するための size()
関数と、行列に存在する特定の値を検索するための find()
関数。行列の詳細については、このリンクを確認してください。
MATLAB でセル配列を作成するための中括弧の使用
中括弧を使用して、MATLAB で任意のデータ型のセル配列を作成できます。セル配列に複数のデータ型を格納できます。たとえば、整数と文字をセルに格納してみましょう。以下のコードを参照してください。
myCell = {10,'Hello'}
出力:
myCell =
1×2 cell array
{[10]} {'Hello'}
セル配列には 2つの配列が含まれ、1つの配列には整数が含まれ、もう 1つの配列には文字が含まれます。インデックスと代入演算子を使用して、データを抽出して既存のセルに保存できます。たとえば、インデックス 2 に格納されている値を抽出し、セルのインデックス 3 に格納してみましょう。以下のコードを参照してください。
myCell = {10,'Hello'}
v = myCell(2)
myCell(3) = v
出力:
myCell =
1×2 cell array
{[10]} {'Hello'}
v =
1×1 cell array
{'Hello'}
myCell =
1×3 cell array
{[10]} {'Hello'} {'Hello'}
インデックス 2 の値を抽出して変数 v
に格納し、この値をセル配列のインデックス 3 に格納しました。cell2mat()
のような多くのセル関数を使用して、セル配列を行列に変換したり、セルに関連するさらに多くの関数を使用したりできます。セルアレイの詳細については、このリンクを確認してください。