innerjoin
2 つの table または timetable 間の内部連結
構文
説明
はキー変数を使用して、T
= innerjoin(Tleft
,Tright
)Tleft
と Tright
の "内部連結" として table または timetable T
を作成します。内部連結は、キー変数の値が一致する行を連結します。たとえば、Tleft
に Key1
と Var1
という名前の変数があり、Tright
に変数 Key1
と Var2
がある場合、T=innerjoin(Tleft,Tright)
は Key1
をキー変数として使用します。
既定では、キー変数は次のとおりです。
両方の入力が table であるか、
Tleft
が timetable でTright
が table の場合は、Tleft
とTright
内の同じ名前の変数。Tleft
とTright
がともに timetable である場合は、行時間のベクトル。
一致しているキー変数の値の順序は、左右のテーブルで同じである必要はありません。内部連結は、2 つのテーブルの変数の間で 1 対多と多対 1 の照合を実行できます。つまり、左のテーブルのキー変数に 1 回出現する値について、一致する値が右のテーブルに複数存在できます。同様に、右のテーブルのキー変数に 1 回出現する値について、一致する値が左のテーブルの複数存在できます。
内部連結は table と timetable の特定の組み合わせでのみ実行できます。
Tleft
が table の場合、Tright
は table でなければなりません。innerjoin
はT
を table として返します。Tleft
が timetable の場合、Tright
は table と timetable のいずれかにできます。innerjoin
はいずれかの入力の組み合わせに対して timetable としてT
を返します。
は、1 つ以上の T
= innerjoin(Tleft
,Tright
,Name,Value
)Name,Value
のペアの引数で指定された追加オプションを使用して内部連結操作を実行します。
たとえば、キー変数として使用する変数を指定できます。
例
入力引数
出力引数
詳細
アルゴリズム
入力 table または timetable からの行ラベルのベクトルは、単独のキー変数として、または他のキー変数と組み合わせたキー変数として使用できます。行ラベルは、table の行名または timetable の行時間です。このベクトルをキーとして使用するには、(table の行名に対して)
'Row'
として、行時間の timetable ベクトルの名前として、または
の値として指定します。ここでT
.Properties.DimensionNames{1}
は table または timetable です。T
一般的に、
innerjoin
は、入力テーブルTleft
から出力テーブルT
に行ラベルをコピーします。Tleft
に行ラベルがない場合、T
に行ラベルはありません。Tleft
に行ラベルがある場合、innerjoin
はTleft
から行ラベルをコピーしてT
に行ラベルを作成します。ただし、
Tleft
とTright
の両方が table であるが、いずれの入力の行名もキーとして指定しなかった場合、innerjoin
はT
に行名を作成しません。Tleft
とTright
の両方が timetable であるが、どちらの入力の行時間もキーとして指定しなかった場合、innerjoin
はTleft
からT
に行時間をコピーします。
Tleft
の行ラベルを左キー、Tright
の変数を右キーとして使用して、内部連結を実行することはできません。内部連結を実行するには、Tleft
の行ラベルを table 変数に変換し、この新しい table 変数をキーとして使用します。
拡張機能
バージョン履歴
R2013b で導入