Bonsoir,
je voudrais juste savoir si c'est possible de concaténer deux vecteur (ou plus) qui n'ont pas la même taille.
soit A de taille : 102 1
et B de taille : 1024 1
merci d'avance
Bonsoir,
je voudrais juste savoir si c'est possible de concaténer deux vecteur (ou plus) qui n'ont pas la même taille.
soit A de taille : 102 1
et B de taille : 1024 1
merci d'avance
Bonjour,
La solution peut être d'utiliser un tableau de cellule:
Bonne journée,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 C = {A,B};
Duf
merci, ça marche pour la concaténation! mais j'ai besoin de faire des opération sur ce vecteur et ça ne marche pas si je les concatène de cette façon!
en fait ce que j'ai besoin c'est d'avoir un seul vecteur.
A de taille : 1, N
B de tailele : 1, M
je veux avoir un vecteur de taille: 1,N+M
Salut,
comme ce sont des vecteurs (1 ligne pour chaque variable) tu peux tout simplement les concatener l'un derrière l'autre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part C = [A B];
Pour une bonne utilisation des balises codec'est ici!
Petit guide du voyageur MATLABien :Le forum
La faq
Les tutoriels
Les sources
La nature est un livre écrit en langage mathématique. Galilée.
Simplement comme cela non? :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 A=[8 4 4];B=[9 2] >> C=[A B] C = 8 4 4 9 2
Tu peux aussi consulter le tutoriel du site qui comprends une partie sur la concaténation :
http://briot-jerome.developpez.com/m...gestion/#LIV-A
Pour une bonne utilisation des balises codec'est ici!
Petit guide du voyageur MATLABien :Le forum
La faq
Les tutoriels
Les sources
La nature est un livre écrit en langage mathématique. Galilée.
Merci, j'ai déjà essayé ça mais ça me donne une erreur signalant que les matrice doivent avoir la même taille
ceci est l'erreur généré par matlab:
merci de m'avoir donner votre temps
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ??? Error using ==> horzcat All matrices on a row in the bracketed expression must have the same number of rows.
![]()
Pour concaténer 2 vecteurs sans se soucier de savoir si ce sont des vecteurs lignes ou colonnes, il suffit de faire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 A = [1 2 3 4 5] B = [6;7;8;9] C = [A(:) ; B(:)]
Ben non justement :
Il faut faire comme je l'ai montré précédemment... c'est la seule solution pour ne pas avoir à s'inquiéter de l'orientation des vecteurs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 >> A=[4 9 3];B=[8 ; 5 ; 1];C=[A' B] C = 4 8 9 5 3 1
oui ou en ligne
du coup je me demande pourquoi j'ai rencontré ce type de code
Code : Sélectionner tout - Visualiser dans une fenêtre à part [A(:)' B(:)']
le point notemment m'intrigue mais peut-être est-ce une ancienne façon de faire puisque Matlab relève le crochet en orange
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 x = [x(:)].' %qui devrait être équivalent à x=x(:)'
merci! c'est bon ça marche
je dois dire que personnelement au début je m'y perdais totalement.
je penche pour une ancienne syntaxe parce qu'en l'occurence
j'ose espérer qu'il savent ce qu'ils font
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 % Copyright 1988-2005 The MathWorks, Inc. % $Revision: 1.1.6.2 $
local_max de la signal processing toolbox (?) mais je pense qu'elle n'est pas très utilisée puisque non documentée et qu'il y a findpeak, pas de local_min alors qu'il suffit de changer le signe des inégalités.
Partager