vertcat - Concatenate arrays vertically - MATLAB (original) (raw)

Concatenate arrays vertically

Syntax

Description

C = vertcat([A](#mw%5F0d1ace8b-760f-4ca6-976f-43568bd751c6),[B](#mw%5F0448a926-2c04-4000-8031-2fd82861bd71)) concatenates B vertically to the end of A whenA and B have compatible sizes (the lengths of the dimensions match except in the first dimension).

example

C = vertcat([A1,A2,…,An](#mw%5Ff27487d4-a3db-458d-9a84-4e96b59c8652)) concatenatesA1, A2, … , An vertically.

vertcat is equivalent to using square brackets to vertically concatenate or append arrays. For example, [A; B] is the same asvertcat(A,B) when A and B are compatible arrays.

example

Examples

collapse all

Two Matrices

Concatenate two matrices vertically.

Create two matrices, and vertically append the second matrix to the first by using square bracket notation.

C = 3×3

 1     2     3
 4     5     6
 7     8     9

Now, vertically append the second matrix to the first by using vertcat.

D = 3×3

 1     2     3
 4     5     6
 7     8     9

Two Tables

Create a table A with three rows and five variables.

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'}  

Create a table B with the same variables as A except for order.

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  

Vertically concatenate tables A and B. The variables of C are in the same order as the variables of A and default row names are used for the rows from 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'}  

Dates with Different Types

Concatenate a date character vector, a string date, and a datetime into a single column of dates. The result is a datetime column vector.

chardate = '2016-03-24'; strdate = "2016-04-19"; t = datetime('2016-05-10','InputFormat','yyyy-MM-dd'); C = vertcat(chardate,strdate,t)

C = 3x1 datetime 24-Mar-2016 19-Apr-2016 10-May-2016

String Array

Concatenate three string arrays into a single array.

A1 = ["str1" "str2"]; A2 = ["str3" "str4"]; A3 = ["str5" "str6"]; C = vertcat(A1,A2,A3)

C = 3x2 string "str1" "str2" "str3" "str4" "str5" "str6"

Matrices in a Cell Array

Create a cell array containing two matrices. Vertically concatenate the matrices from the cell array into one matrix.

M1 = [1 2; 3 4]; M2 = [5 6; 7 8]; A1 = {M1,M2}; C = vertcat(A1{:})

Input Arguments

collapse all

A — First input

scalar | vector | matrix | multidimensional array | table | timetable

First input, specified as a scalar, vector, matrix, multidimensional array, table, or timetable.

B — Second input

scalar | vector | matrix | multidimensional array | table | timetable

Second input, specified as a scalar, vector, matrix, multidimensional array, table, or timetable.

A1,A2,…,An — List of inputs

comma-separated list

List of inputs, specified as a comma-separated list of elements to concatenate in the order they are specified.

Algorithms

When concatenating an empty array to a nonempty array, vertcat omits the empty array in the output. For example, vertcat([1; 2],[]) returns the column vector [1; 2].

If all input arguments are empty and have compatible sizes, thenvertcat returns an empty array whose size is equal to the output size as when the inputs are nonempty. For example, vertcat(zeros(1,0),zeros(2,0)) returns a 3-by-0 empty array. If the input sizes are not compatible, thenvertcat returns a 0-by-0 empty array.

Extended Capabilities

Tall Arrays

Calculate with arrays that have more rows than fit in memory.

Thevertcat function supports tall arrays with the following usage notes and limitations:

For more information, see Tall Arrays.

C/C++ Code Generation

Generate C and C++ code using MATLAB® Coder™.

Thread-Based Environment

Run code in the background using MATLAB® backgroundPool or accelerate code with Parallel Computing Toolbox™ ThreadPool.

This function fully supports thread-based environments. For more information, see Run MATLAB Functions in Thread-Based Environment.

GPU Arrays

Accelerate code by running on a graphics processing unit (GPU) using Parallel Computing Toolbox™.

The vertcat function supports GPU array input with these usage notes and limitations:

For more information, see Run MATLAB Functions on a GPU (Parallel Computing Toolbox).

Distributed Arrays

Partition large arrays across the combined memory of your cluster using Parallel Computing Toolbox™.

This function fully supports distributed arrays. For more information, see Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox).

Version History

Introduced before R2006a