IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Changer une matrice en vecteurs


Sujet :

MATLAB

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 19
    Points : 7
    Points
    7
    Par défaut Changer une matrice en vecteurs
    Bonjour,

    J'ai vu que sur ce forum, on arrivait à répondre aux questions les plus folles, alors je me permets de vous exposer mon problème:

    J'ai un fichier excel constitué de 3 colonnes et N lignes. Chaque ligne représente des valeurs prises par 3 variables à chaque top horloge.
    Comment faire pour que matlab considère chaque ligne comme un vecteur à part entière et effectue un calcul donné, à chaque top, avec ce vecteur, indépendamment de la ligne précédente ??

    Merci d'avance

  2. #2
    Membre éclairé Avatar de tubaas
    Homme Profil pro
    Acousticien
    Inscrit en
    Août 2009
    Messages
    641
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Acousticien
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2009
    Messages : 641
    Points : 825
    Points
    825
    Par défaut
    salut
    supposons la matrice A Nx3
    donnera un vecteur 1x3 (ième ligne de la matrice).
    Peut-être cela te suffit-il ?
    Sinon cette discussion peut aussi t'intéresser

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 19
    Points : 7
    Points
    7
    Par défaut
    J'ai ça comme code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    x= [9.2 9 9; 10 9.8 9.5; 11 9.75 10.1; 10.2 9 9];
     
    N=size(x,2);
    M=size(x,1);
     
     
    for k=1:M; i=1:N; j=1:N;
        x_v=x(k,:)
        dis=abs(x_v(i)-x_v(j))  
    end

    Mais ça marche pas...

  4. #4
    Membre éclairé Avatar de tubaas
    Homme Profil pro
    Acousticien
    Inscrit en
    Août 2009
    Messages
    641
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Acousticien
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2009
    Messages : 641
    Points : 825
    Points
    825
    Par défaut
    salut
    si tu veux boucler également sur i et j il te faut rajouter des boucles (ici tu boucles sur k ; i et j sont des vecteurs)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    for k=1:M; 
        x_v=x(k,:)
    for i=1:N; 
    for j=1:N;
        dis=abs(x_v(i)-x_v(j))  
    end
    end
    end
    tu aurais d'ailleurs peut-être intérêt à créer une matrice pour dis
    sachant que pour obtenir ce que tu veux et que abs(x_v(1)-x_v(2))=abs(x_v(2)-x_v(1)) tu dois pouvoir t'en tirer avec la fonction DIFF. tu peux chercher, voici une proposition
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    y=[x x(:,1)];
    dis=abs(diff(y,1,2))
    Edit : j'ai utilisé une variable intermédiaire y pour des raisons de clarté mais théoriquement il faudrait s'en passer (utlisation de mémoire).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    x= [9.2 9 9; 10 9.8 9.5; 11 9.75 10.1; 10.2 9 9];
    dis=abs(diff([x x(:,1)],1,2))

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 19
    Points : 7
    Points
    7
    Par défaut
    Je vais essayer ça !
    Merci

Discussions similaires

  1. Passage d'une matrice à un vecteur colonne
    Par feynman dans le forum Fortran
    Réponses: 1
    Dernier message: 26/03/2008, 08h42
  2. Changer une matrice (n,m) en matrice (1,(n*m))
    Par dm_manu dans le forum MATLAB
    Réponses: 5
    Dernier message: 28/12/2006, 13h26
  3. Réponses: 2
    Dernier message: 30/08/2006, 10h50
  4. Réponses: 14
    Dernier message: 28/07/2006, 10h20
  5. valeurs propres d'une matrice et vecteurs propres
    Par la_fantomas dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 01/05/2005, 15h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo