vertcat
Concaténer verticalement des tableaux
Description
C = vertcat( concatène verticalement A1,A2,…,An)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.
Exemples
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
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
Bsont 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, alorsBdoit 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,
vertcatutilise 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 fonctionvertcateffectue la concaténation en faisant correspondre les noms de variables. Pour les tables en entrée,vertcatconcatè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
vertcateffectue la concaténation en faisant correspondre les noms de variables. Pour les timetables en entrée,vertcatconcatène également les valeurs de propriétéRowTimeset 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
A1est 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,
vertcatutilise 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 fonctionvertcateffectue la concaténation en faisant correspondre les noms de variables. Pour les tables en entrée,vertcatconcatè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
vertcateffectue la concaténation en faisant correspondre les noms de variables. Pour les timetables en entrée,vertcatconcatène également les valeurs de propriétéRowTimeset 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
La fonction vertcat supporte les tall arrays avec les notes d’usage et limitations suivantes :
la concaténation verticale des tableaux de caractères n’est pas supportée.
La concaténation des tableaux catégoriels ordinaux n’est pas supportée.
La concaténation verticale de deux tall arrays donne un tall array basé sur un datastore différent de celui des tall arrays en entrée. Par conséquent, si vous essayez de combiner le résultat de la concaténation avec l’un des tall arrays en entrée, les tableaux sont incompatibles. Par exemple, la commande suivante génère une erreur, car la tall table d’origine
Test basée sur un datastore et la sortie de l’opération de concaténation est basée sur un autre datastore :T.Var3 = [T.Var1(1); T.Var2(2:end)]
En revanche, si vous concaténez uniquement les valeurs en mémoire vers un tall array, le résultat de la concaténation est basé sur le même datastore. Par exemple, si vous remplacez
T.Var1(1)par un scalaire en mémoire dans l’exemple précédent, la commande s’exécute comme suit :T.Var3 = [0; T.Var2(2:end)]
Pour plus d’informations, consultez Tall array.
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™.
La fonction vertcat supporte entièrement les environnements basés sur des threads. Pour plus d’informations, consultez Run MATLAB Functions in Thread-Based Environment.
La fonction vertcat supporte les GPU arrays avec les notes d’usage et limitations suivantes :
Les matrices creuses ne sont pas supportées.
Pour plus d’informations, consultez Exécuter les fonctions MATLAB sur un GPU (Parallel Computing Toolbox).
La fonction vertcat supporte entièrement les distributed arrays. Pour plus d’informations, consultez Exécuter les fonctions MATLAB avec des tableaux distribués (Parallel Computing Toolbox).
Historique des versions
Introduit avant 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.
Sélectionner un site web
Choisissez un site web pour accéder au contenu traduit dans votre langue (lorsqu'il est disponible) et voir les événements et les offres locales. D’après votre position, nous vous recommandons de sélectionner la région suivante : .
Vous pouvez également sélectionner un site web dans la liste suivante :
Comment optimiser les performances du site
Pour optimiser les performances du site, sélectionnez la région Chine (en chinois ou en anglais). Les sites de MathWorks pour les autres pays ne sont pas optimisés pour les visites provenant de votre région.
Amériques
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- 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)