Main Content

cat

Concatenar arreglos

Descripción

ejemplo

C = cat(dim,A,B) concatena B al final de A en la dimensión dim cuando A y B tienen tamaños compatibles (las longitudes de las dimensiones coinciden con excepción de la dimensión operativa dim).

ejemplo

C = cat(dim,A1,A2,…,An) concatena A1, A2, … , An en la dimensión dim.

Puede utilizar el operador corchetes [] para concatenar o anexar arreglos. Por ejemplo, [A,B] y [A B] concatenan los arreglos A y B horizontalmente, y [A; B] los concatena verticalmente.

Ejemplos

contraer todo

Concatene dos matrices verticalmente y, después, horizontalmente.

Cree dos matrices y anexe verticalmente la segunda matriz a la primera.

A = ones(3)
A = 3×3

     1     1     1
     1     1     1
     1     1     1

B = zeros(3)
B = 3×3

     0     0     0
     0     0     0
     0     0     0

C1 = cat(1,A,B)
C1 = 6×3

     1     1     1
     1     1     1
     1     1     1
     0     0     0
     0     0     0
     0     0     0

Ahora, anexe horizontalmente la segunda matriz a la primera.

C2 = cat(2,A,B)
C2 = 3×6

     1     1     1     0     0     0
     1     1     1     0     0     0
     1     1     1     0     0     0

Cree dos arreglos 3D y concaténelos en la tercera dimensión. Las longitudes de la primera y la segunda dimensión en el arreglo resultante coinciden con las longitudes correspondientes en los arreglos de entrada, mientras que la tercera dimensión se amplía.

A = rand(2,3,4);
B = rand(2,3,5);
C = cat(3,A,B);
szC = size(C)
szC = 1×3

     2     3     9

Cree una tabla y añada una fila utilizando un arreglo de celdas.

LastName = {'Sanchez';'Johnson';'Li';'Diaz'};
Age = [38;43;38;40];
T1 = table(LastName,Age)
T1=4×2 table
     LastName      Age
    ___________    ___

    {'Sanchez'}    38 
    {'Johnson'}    43 
    {'Li'     }    38 
    {'Diaz'   }    40 

Trow = {'Brown',49};
T2 = cat(1,T1,Trow)
T2=5×2 table
     LastName      Age
    ___________    ___

    {'Sanchez'}    38 
    {'Johnson'}    43 
    {'Li'     }    38 
    {'Diaz'   }    40 
    {'Brown'  }    49 

Concatene un vector de caracteres de fecha, una fecha de cadena y una fecha/hora en una única columna de fechas. El resultado es un vector fecha/hora.

chardate = '2016-03-24';
strdate = "2016-04-19";
t = datetime('2016-05-10','InputFormat','yyyy-MM-dd');
C = cat(1,chardate,strdate,t)
C = 3x1 datetime
   24-Mar-2016
   19-Apr-2016
   10-May-2016

Cree un arreglo de celdas que contenga dos matrices y concatene las matrices tanto vertical como horizontalmente.

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

     1     2
     3     4
     5     6
     7     8

Chorz = cat(2,A1{:})
Chorz = 2×4

     1     2     5     6
     3     4     7     8

Argumentos de entrada

contraer todo

Dimensión en la que operar, especificada como escalar entero positivo. Por ejemplo, si A y B son matrices de 2 por 2, cat(1,A,B) concatena verticalmente creando una matriz de 4 por 2. cat(2,A,B) concatena horizontalmente creando una matriz de 2 por 4.

dim debe ser 1 o 2 para la entrada de tabla o de horario.

Primera entrada, especificada como escalar, vector, matriz, arreglo multidimensional, tabla u horario.

Segunda entrada, especificada como escalar, vector, matriz, arreglo multidimensional, tabla u horario.

  • Los elementos de B se concatenan al final de la primera entrada en la dimensión operativa. Los tamaños de los argumentos de entrada deben ser compatibles. Por ejemplo, si la primera entrada es una matriz de tamaño 3 por 2, B debe tener 2 columnas para concatenar verticalmente y 3 filas para concatenar horizontalmente.

  • Al concatenar horizontalmente, todas las entradas de tabla deben tener nombres de variables únicos. Cuando están presentes, los nombres de las filas deben ser idénticos, pero no su orden. De forma similar, todas las entradas de horarios deben tener los mismos tiempos de la fila y todas las columnas deben tener nombres distintos.

  • Puede concatenar combinaciones válidas de diferentes tipos. Para obtener más información, consulte Valid Combinations of Unlike Classes.

Lista de entradas, especificada como lista separada por comas de arreglos para concatenar en el orden en el que se especifican.

  • Las entradas deben tener tamaños compatibles. Por ejemplo, si A1 es un vector fila de longitud m, las entradas restantes deben tener m columnas cada una para concatenarse verticalmente.

  • Al concatenar horizontalmente, todas las entradas de tabla deben tener nombres de variables únicos. Cuando están presentes, los nombres de las filas deben ser idénticos, pero no su orden. De forma similar, todas las entradas de horarios deben tener los mismos tiempos de la fila y todas las columnas deben tener nombres distintos.

  • Puede concatenar combinaciones válidas de diferentes tipos. Para obtener más información, consulte Valid Combinations of Unlike Classes.

Sugerencias

  • Para construir texto concatenando horizontalmente cadenas, vectores de caracteres o arreglos de celdas de vectores de caracteres, utilice la función strcat.

  • Para construir un único fragmento de texto delimitado a partir de un arreglo de celdas de vectores de caracteres o de un arreglo de cadenas, utilice la función strjoin.

Algoritmos

Al concatenar un arreglo vacío en un arreglo no vacío, cat omite el arreglo vacío en la salida. Por ejemplo, cat(2,[1 2],[]) devuelve el vector fila [1 2].

Si todos los argumentos de entrada están vacíos y tienen tamaños compatibles, cat devuelve un arreglo vacío cuyo tamaño es igual al tamaño de salida cuando las entradas no están vacías. Por ejemplo, cat(2,zeros(0,1),zeros(0,2)) devuelve un arreglo vacío de 0 por 3.

Capacidades ampliadas

Historial de versiones

Introducido antes de R2006a