このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
vertcat
配列の垂直方向の連結
説明
C = vertcat(
は、A1,A2,…,An
)A1
、A2
、…、An
を垂直方向に連結します。
vertcat
は、大かっこを使用して配列を垂直方向に連結または追加することと同じです。たとえば、A
と B
が適合する配列である場合、[A; B]
は vertcat(A,B)
と同じです。
例
2 つの行列を垂直方向に連結します。
2 つの行列を作成し、大かっこの表記を使用して 2 番目の行列を最初の行列に垂直方向に追加します。
A = [1 2 3; 4 5 6]
A = 2×3
1 2 3
4 5 6
B = [7 8 9]
B = 1×3
7 8 9
C = [A; B]
C = 3×3
1 2 3
4 5 6
7 8 9
次に、vertcat
を使用して 2 番目の行列を最初の行列に垂直方向に追加します。
D = vertcat(A,B)
D = 3×3
1 2 3
4 5 6
7 8 9
3 つの行と 5 つの変数をもつ table A
を作成します。
A = table([5;6;5],['M';'M';'M'],[45;41;40],[45;32;34],{'NY';'CA';'MA'},... 'VariableNames',{'Age' 'Gender' 'Height' 'Weight' 'Birthplace'},... 'RowNames',{'Thomas' 'Gordon' 'Percy'})
A=3×5 table
Age Gender Height Weight Birthplace
___ ______ ______ ______ __________
Thomas 5 M 45 45 {'NY'}
Gordon 6 M 41 32 {'CA'}
Percy 5 M 40 34 {'MA'}
順序を除き、A
と同じ変数をもつ table B
を作成します。
B = table(['F';'M';'F'],[6;6;5],{'AZ';'NH';'CO'},[31;42;33],[39;43;40],... 'VariableNames',{'Gender' 'Age' 'Birthplace' 'Weight' 'Height'})
B=3×5 table
Gender Age Birthplace Weight Height
______ ___ __________ ______ ______
F 6 {'AZ'} 31 39
M 6 {'NH'} 42 43
F 5 {'CO'} 33 40
table A
と B
を垂直方向に連結します。C
の変数は A
の変数とと同じ順序になり、既定の行の名前が B
の行に対して使用されています。
C = vertcat(A,B)
C=6×5 table
Age Gender Height Weight Birthplace
___ ______ ______ ______ __________
Thomas 5 M 45 45 {'NY'}
Gordon 6 M 41 32 {'CA'}
Percy 5 M 40 34 {'MA'}
Row4 6 F 39 31 {'AZ'}
Row5 6 M 43 42 {'NH'}
Row6 5 F 40 33 {'CO'}
日付文字ベクトル、string 日付および datetime を連結して 1 列の日付にします。結果は datetime の列ベクトルになります。
chardate = '2016-03-24'; strdate = "2016-04-19"; t = datetime('2016-05-10','InputFormat','yyyy-MM-dd'); C = vertcat(chardate,strdate,t)
C = 3×1 datetime
24-Mar-2016
19-Apr-2016
10-May-2016
3 つの string 配列を単一の配列に連結します。
A1 = ["str1" "str2"]; A2 = ["str3" "str4"]; A3 = ["str5" "str6"]; C = vertcat(A1,A2,A3)
C = 3×2 string
"str1" "str2"
"str3" "str4"
"str5" "str6"
2 つの行列が含まれる cell 配列を作成します。これらの行列を cell 配列から 1 つの行列に垂直方向に連結します。
M1 = [1 2; 3 4]; M2 = [5 6; 7 8]; A1 = {M1,M2}; C = vertcat(A1{:})
C = 4×2
1 2
3 4
5 6
7 8
入力引数
1 番目の入力。スカラー、ベクトル、行列、多次元配列、table または timetable として指定します。
2 番目の入力。スカラー、ベクトル、行列、多次元配列、table または timetable として指定します。
B
の要素が 1 番目の入力の末尾に最初の次元に沿って連結されます。入力引数のサイズには互換性がなければなりません。たとえば、最初の入力が 3 行 2 列のサイズの行列の場合、B
に 2 列なければなりません。すべての table 入力の行名は一意でなければなりません。一部の table 入力に行名がない場合、
vertcat
は出力で既定の行名を入力します。各 table 入力の変数名は同じである必要がありますが、変数の順序は異なっていてもかまいません。vertcat
は変数名を突き合わせて連結します。table 入力の場合、vertcat
はRowNames
プロパティ値も連結します。出力 table の他のプロパティ値は、対応する入力の最初の空ではない (または既定ではない) プロパティ値を使用して割り当てられます。timetable 入力の行時間は一意である必要はありません。各 timetable 入力の変数名は同じである必要がありますが、変数の順序は異なっていてもかまいません。
vertcat
は変数名を突き合わせて連結します。timetable 入力の場合、vertcat
は、RowTimes
プロパティ値と入力に追加されたイベントも連結します。出力 timetable の他のプロパティ値は、対応する入力の最初の空ではない (または既定ではない) プロパティ値を使用して割り当てられます。異なるタイプの有効な組み合わせを連結できます。文字配列、logical 配列、数値型の連結の詳細については、異なるクラスの有効な組み合わせを参照してください。
入力のリスト。指定される順序で連結する要素のコンマ区切りリストとして指定します。
入力のサイズは互換性がなければなりません。たとえば、
A1
が長さ m の行ベクトルである場合、他の入力にはいずれも垂直方向に連結する列が m 列なければなりません。すべての table 入力の行名は一意でなければなりません。一部の table 入力に行名がない場合、
vertcat
は出力で既定の行名を入力します。各 table 入力の変数名は同じである必要がありますが、変数の順序は異なっていてもかまいません。vertcat
は変数名を突き合わせて連結します。table 入力の場合、vertcat
はRowNames
プロパティ値も連結します。出力 table の他のプロパティ値は、対応する入力の最初の空ではない (または既定ではない) プロパティ値を使用して割り当てられます。timetable 入力の行時間は一意である必要はありません。各 timetable 入力の変数名は同じである必要がありますが、変数の順序は異なっていてもかまいません。
vertcat
は変数名を突き合わせて連結します。timetable 入力の場合、vertcat
は、RowTimes
プロパティ値と入力に追加されたイベントも連結します。出力 timetable の他のプロパティ値は、対応する入力の最初の空ではない (または既定ではない) プロパティ値を使用して割り当てられます。異なるタイプの有効な組み合わせを連結できます。文字配列、logical 配列、数値型の連結の詳細については、異なるクラスの有効な組み合わせを参照してください。
アルゴリズム
空の配列を空でない配列に連結する場合、vertcat
は出力で空の配列を除外します。たとえば、vertcat([1; 2],[])
は列ベクトル [1; 2]
を返します。
すべての入力引数が空であり、サイズに互換性がある場合、vertcat
は入力が空でない場合と同じ出力サイズの空の配列を返します。たとえば、vertcat(zeros(1,0),zeros(2,0))
は 3 行 0 列の空の配列を返します。入力サイズに互換性がない場合、vertcat
は 0 行 0 列の空の配列を返します。
拡張機能
vertcat
関数は tall 配列をサポートしていますが、以下の使用上の注意および制限があります。
文字配列の垂直連結はサポートされていません。
順序 categorical 配列の連結はサポートされていません。
2 つの tall 配列を垂直方向に連結すると、その結果は、入力の tall 配列とは別のデータストアに基づく tall 配列になります。したがって、連結の結果を入力の tall 配列のいずれかと結合しようと試みても、それらの配列に互換性はありません。たとえば、次のコマンドは、元の tall table
T
が 1 つのデータストアに基づいており、連結操作の出力は別のデータストアに基づいているためエラーになります。T.Var3 = [T.Var1(1); T.Var2(2:end)]
あるいは、インメモリ値のみを tall 配列に連結する場合、連結の結果は同じデータストアに基づくものとなります。たとえば、前の例で
T.Var1(1)
をインメモリ スカラーに置き換えた場合、コマンドは実行されます。T.Var3 = [0; T.Var2(2:end)]
詳細については、tall 配列を参照してください。
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
この関数はスレッドベースの環境を完全にサポートしています。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
vertcat
関数は GPU 配列入力をサポートしますが、次の使用上の注意および制限があります。
スパース行列はサポートされていません。
詳細については、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
この関数は分散配列を完全にサポートしています。詳細については、分散配列を使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
R2006a より前に導入
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)