Contenu principal

vertcat

Concaténer verticalement des tableaux

Description

C = vertcat(A,B) concatène verticalement B à la fin de A lorsque A et B sont de tailles compatibles (les longueurs des dimensions correspondent, sauf pour la première dimension).

exemple

C = vertcat(A1,A2,…,An) concatène verticalement A1, A2, … , An.

vertcat équivaut à utiliser des crochets pour concaténer ou accoler verticalement des tableaux. Par exemple, [A; B] est équivalent à vertcat(A,B) lorsque A et B sont des tableaux compatibles.

exemple

Exemples

réduire tout

Concaténez verticalement deux matrices.

Créez deux matrices et concaténez la seconde verticalement sur la première en utilisant la notation avec des crochets.

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

Ensuite, concaténez la seconde matrice verticalement sur la première avec vertcat.

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

     1     2     3
     4     5     6
     7     8     9

Créez une table A comportant trois lignes et cinq 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'}  

Créez une table B contenant les mêmes variables que A, mais pas dans le même ordre.

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  

Concaténez verticalement les tables A et B. Les variables de C sont dans le même ordre que celles de A et des noms de ligne par défaut sont utilisés pour les lignes de 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'}  

Concaténez une date sous la forme d'un vecteur de caractères, une date sous la forme d'une chaîne de caractère et une date sous la forme d'un datetime vers une colonne unique. Le résultat est un vecteur colonne 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

Concaténez trois tableaux de chaînes de caractères en un seul tableau.

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

Créez un cell array contenant deux matrices. Concaténez verticalement les matrices du cell array en une seule 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

Arguments d'entrée

réduire tout

Première entrée, spécifiée sous forme de scalaire, de vecteur, de matrice, de tableau multidimensionnel, de table ou de timetable.

Deuxième entrée, spécifiée sous forme de scalaire, de vecteur, de matrice, de tableau multidimensionnel, de table ou de timetable.

  • Les éléments de B sont concaténés à la fin de la première entrée le long de la première dimension. Les tailles des arguments en entrée doivent être compatibles. Par exemple, si la première entrée est une matrice de 3 x 2, alors B doit comporter 2 colonnes.

  • Toutes les tables en entrée doivent avoir des noms de ligne uniques. Si certaines des tables en entrée n’ont pas de noms de ligne, vertcat utilise des noms de ligne par défaut dans la sortie. Les noms de variables de chaque table doivent être identiques, mais les variables ne doivent pas nécessairement être dans le même ordre. La fonction vertcat effectue la concaténation en faisant correspondre les noms de variables. Pour les tables en entrée, vertcat concatène également les valeurs de propriété RowNames. Les autres valeurs de propriété de la table en sortie sont affectées selon les premières valeurs de propriété non vides (ou autres que celles par défaut) des entrées correspondantes.

  • Il n’est pas nécessaire que les informations d’horodatage des timetables en entrée soient uniques. Les noms de variables de chaque timetable doivent être identiques, mais les variables ne doivent pas nécessairement être dans le même ordre. La fonction vertcat effectue la concaténation en faisant correspondre les noms de variables. Pour les timetables en entrée, vertcat concatène également les valeurs de propriété RowTimes et les événements associés aux entrées. Les autres valeurs de propriété de la timetable en sortie sont affectées selon les premières valeurs de propriété non vides (ou autres que celles par défaut) des entrées correspondantes.

  • Vous pouvez concaténer des combinaisons valides de différents types. Pour plus d’informations sur la concaténation de tableaux de caractères, de tableaux logiques et de types numériques, consultez Valid Combinations of Text and Numeric Datatypes.

Liste d’entrées, spécifiée en tant que liste d’éléments séparés par des virgules, à concaténer dans l’ordre indiqué.

  • Les entrées doivent être de tailles compatibles. Par exemple, si A1 est un vecteur ligne de longueur m, alors chacune des entrées restantes doit disposer de m colonnes à concaténer verticalement.

  • Toutes les tables en entrée doivent avoir des noms de ligne uniques. Si certaines des tables en entrée n’ont pas de noms de ligne, vertcat utilise des noms de ligne par défaut dans la sortie. Les noms de variables de chaque table doivent être identiques, mais les variables ne doivent pas nécessairement être dans le même ordre. La fonction vertcat effectue la concaténation en faisant correspondre les noms de variables. Pour les tables en entrée, vertcat concatène également les valeurs de propriété RowNames. Les autres valeurs de propriété de la table en sortie sont affectées selon les premières valeurs de propriété non vides (ou autres que celles par défaut) des entrées correspondantes.

  • Il n’est pas nécessaire que les informations d’horodatage des timetables en entrée soient uniques. Les noms de variables de chaque timetable doivent être identiques, mais les variables ne doivent pas nécessairement être dans le même ordre. La fonction vertcat effectue la concaténation en faisant correspondre les noms de variables. Pour les timetables en entrée, vertcat concatène également les valeurs de propriété RowTimes et les événements associés aux entrées. Les autres valeurs de propriété de la timetable en sortie sont affectées selon les premières valeurs de propriété non vides (ou autres que celles par défaut) des entrées correspondantes.

  • Vous pouvez concaténer des combinaisons valides de différents types. Pour plus d’informations sur la concaténation de tableaux de caractères, de tableaux logiques et de types numériques, consultez Valid Combinations of Text and Numeric Datatypes.

Algorithmes

Lorsque vous concaténez un tableau vide dans un tableau non vide, vertcat ignore le tableau vide dans la sortie. Par exemple, vertcat([1; 2],[]) renvoie le vecteur colonne [1; 2].

Si tous les arguments en entrée sont vides et de tailles compatibles, alors vertcat renvoie un tableau vide dont la taille équivaut à celle de la sortie lorsque les entrées ne sont pas vides. Par exemple, vertcat(zeros(1,0),zeros(2,0)) renvoie un tableau vide de 3 x 0. Si les tailles en entrée ne sont pas compatibles, vertcat renvoie un tableau vide de 0 x 0.

Capacités étendues

développer tout

Génération de code C/C++
Générez du code C et C++ avec MATLAB® Coder™.

Génération de code GPU
Générez du code CUDA® pour les GPU NVIDIA® avec GPU Coder™.

Historique des versions

Introduit avant R2006a