Contenuto principale

vertcat

Concatenare gli array verticalmente

Descrizione

C = vertcat(A,B) concatena B verticalmente alla fine di A quando A e B hanno grandezze compatibili (le lunghezze delle dimensioni corrispondono, tranne che nella prima dimensione).

esempio

C = vertcat(A1,A2,…,An) concatena A1, A2, … , An verticalmente.

vertcat è equivalente all'utilizzo delle parentesi quadre per concatenare o aggiungere verticalmente gli array. Ad esempio, [A; B] è uguale a vertcat(A,B) quando A e B sono array compatibili.

esempio

Esempi

comprimi tutto

Concatenare due matrici verticalmente.

Creare due matrici e aggiungere verticalmente la seconda matrice alla prima utilizzando la notazione delle parentesi quadre.

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

Ora, aggiungere verticalmente la seconda matrice alla prima utilizzando vertcat.

D = vertcat(A,B)
D = 3×3

     1     2     3
     4     5     6
     7     8     9

Creare una tabella A con tre righe e cinque variabili.

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

Creare una tabella B on le stesse variabili di A, tranne l'ordine.

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  

Concatenare verticalmente le tabelle A e B. Le variabili di C sono nello stesso ordine delle variabili di A e per le righe di B vengono utilizzati nomi di riga predefiniti.

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

Concatenare un vettore di caratteri di data, una data di stringa e una data e ora in un'unica colonna di date. Il risultato è un vettore colonna di data e ora.

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

Concatenare tre array di stringhe in un unico array.

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

Creare un array di celle contenente due matrici. Concatenare verticalmente le matrici dall'array di celle in un'unica matrice.

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

Argomenti di input

comprimi tutto

Primo input, specificato come scalare, vettore, matrice, array multidimensionale, tabella o orario.

Secondo input, specificato come scalare, vettore, matrice, array multidimensionale, tabella o orario.

  • Gli elementi di B sono concatenati alla fine del primo input lungo la prima dimensione. Le grandezze degli argomenti di input devono essere compatibili. Ad esempio, se il primo input è una matrice di grandezza 3x2, B deve avere 2 colonne.

  • Tutti gli input della tabella devono avere nomi di riga univoci. Se alcuni degli input della tabella non hanno nomi di riga, vertcat riempie i nomi di riga predefiniti per l'output. I nomi delle variabili in ciascun input della tabella devono essere uguali, ma le variabili possono essere in un ordine diverso. vertcat concatena i nomi delle variabili tramite la corrispondenza. Per gli input della tabella, vertcat concatena inoltre i valori delle proprietà RowNames. Gli altri valori delle proprietà della tabella di output vengono assegnati utilizzando i primi valori non vuoti (o non predefiniti) delle proprietà degli input corrispondenti.

  • Non è necessario che i tempi della riga di input dell'orario siano univoci. I nomi delle variabili in ciascun input dell'orario devono essere uguali, ma le variabili possono essere in un ordine diverso. vertcat concatena i nomi delle variabili tramite la corrispondenza. Per gli input dell'orario, vertcat concatena inoltre i valori delle proprietà RowTimes e gli eventi collegati agli input. Gli altri valori delle proprietà dell'orario di output vengono assegnati utilizzando i primi valori non vuoti (o non predefiniti) delle proprietà degli input corrispondenti.

  • È possibile concatenare combinazioni valide di tipi diversi. Per ulteriori informazioni sulla concatenazione di array di caratteri, array logici e tipi numerici, vedere Valid Combinations of Unlike Classes.

Elenco degli input, specificato come elenco separato da virgole di elementi da concatenare nell'ordine in cui sono specificati.

  • Gli input devono avere grandezze compatibili. Ad esempio, se A1 è un vettore di riga di lunghezza m, ciascuno dei restanti input deve avere m colonne da concatenare verticalmente.

  • Tutti gli input della tabella devono avere nomi di riga univoci. Se alcuni degli input della tabella non hanno nomi di riga, vertcat riempie i nomi di riga predefiniti per l'output. I nomi delle variabili in ciascun input della tabella devono essere uguali, ma le variabili possono essere in un ordine diverso. vertcat concatena i nomi delle variabili tramite la corrispondenza. Per gli input della tabella, vertcat concatena inoltre i valori delle proprietà RowNames. Gli altri valori delle proprietà della tabella di output vengono assegnati utilizzando i primi valori non vuoti (o non predefiniti) delle proprietà degli input corrispondenti.

  • Non è necessario che i tempi della riga di input dell'orario siano univoci. I nomi delle variabili in ciascun input dell'orario devono essere uguali, ma le variabili possono essere in un ordine diverso. vertcat concatena i nomi delle variabili tramite la corrispondenza. Per gli input dell'orario, vertcat concatena inoltre i valori delle proprietà RowTimes e gli eventi collegati agli input. Gli altri valori delle proprietà dell'orario di output vengono assegnati utilizzando i primi valori non vuoti (o non predefiniti) delle proprietà degli input corrispondenti.

  • È possibile concatenare combinazioni valide di tipi diversi. Per ulteriori informazioni sulla concatenazione di array di caratteri, array logici e tipi numerici, vedere Valid Combinations of Unlike Classes.

Algoritmi

Quando si concatena un array vuoto a un array non vuoto, vertcat omette l'array vuoto nell'output. Ad esempio, vertcat([1; 2],[]) restituisce il vettore colonna [1; 2].

Se tutti gli argomenti di input sono vuoti e hanno dimensioni compatibili, vertcat restituisce un array vuoto la cui dimensione è uguale alla dimensione dell'output quando gli input sono non vuoti. Ad esempio, vertcat(zeros(1,0),zeros(2,0)) restituisce un array vuoto 3x0. Se le grandezze di input non sono compatibili, vertcat restituisce un array vuoto 0x0.

Funzionalità estese

espandi tutto

Generazione di codice C/C++
Genera codice C e C++ con MATLAB® Coder™.

Cronologia versioni

Introduzione prima di R2006a