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

R Discussion :

Créer matrice une colonne à partir d'une matrice à plusieurs colonnes


Sujet :

R

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Créer matrice une colonne à partir d'une matrice à plusieurs colonnes
    Bonjour,

    Je suis débutant en R et j'ai un problème certainement très bête.
    J'ai à la base une matrice de très grande dimension et j'aimerais créer une nouvelle matrice colonne à partir de toutes les colonnes de ma matrice initiale, l'une à la suite de l'autre.

    Si quelqu'un pouvait m'aider, cela serait très gentil.

    Merci d'avance

  2. #2
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 014
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 014
    Points : 23 702
    Points
    23 702
    Par défaut
    Bonjour et bienvenue sur le forum,

    C'est effectivement très simple à faire (en tout cas si j'ai bien compris votre besoin).
    En supposant que votre matrice initiale s'appelle mat et la matrice que vous souhaitez créer s'appelle mat2, il suffit de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mat2 <- matrix(mat, ncol = 1)
    Et le tour est joué
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci pour cette réponse rapide mais cela ne fonctionne pas, du moins ce n'est pas ce que je désire obtenir.
    Avec ce code il me crée une matrice colonne avec pour chaque entrée de ligne, la première valeur de la colonne suivie de : et puis la dernière valeur de la colonne.
    En gros si j'ai une matrice 2 colonnes 10 lignes, avec dans la première colonne des valeur de 1 à 10 et la deuxième de 11 à 20. Le résultat avec votre code sera: première ligne 1:10 et deuxième ligne 11:20.
    J'aimerai avoir comme résultat une colonne avec les toutes les valeurs de 1 à 20.

    Merci

  4. #4
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 014
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 014
    Points : 23 702
    Points
    23 702
    Par défaut
    Ah bah non, le code que j'ai donné fait ça
    Démonstration :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    > mat <- matrix(1:20, ncol=2)
    > mat
          [,1] [,2]
     [1,]    1   11
     [2,]    2   12
     [3,]    3   13
     [4,]    4   14
     [5,]    5   15
     [6,]    6   16
     [7,]    7   17
     [8,]    8   18
     [9,]    9   19
    [10,]   10   20
    > matrix(mat, ncol=1)
          [,1]
     [1,]    1
     [2,]    2
     [3,]    3
     [4,]    4
     [5,]    5
     [6,]    6
     [7,]    7
     [8,]    8
     [9,]    9
    [10,]   10
    [11,]   11
    [12,]   12
    [13,]   13
    [14,]   14
    [15,]   15
    [16,]   16
    [17,]   17
    [18,]   18
    [19,]   19
    [20,]   20
    Il n'y a bien qu'une seule colonne, de 1 à 20...
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci, j'avoue que je ne sais pas ce que j'ai fait pour vérifier ton code la première fois. Toutes mes excuses.
    J'avais essayé avec une matrice qui comprend des labels peut-être le problème venait de la...

    En tout cas merci beaucoup et encore désolé pour cette question un peu simplette

  6. #6
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 014
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 014
    Points : 23 702
    Points
    23 702
    Par défaut
    Aucun souci.
    Ce qui peut expliquer ce comportement, c'est un paramètre byrow = TRUE qui trainerait dans la fonction matrix...
    Bonne continuation.
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Créer des fichiers excel à partir d'une feuille et d'une liste
    Par chmouf dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 03/05/2014, 20h57
  2. Réponses: 3
    Dernier message: 13/07/2011, 16h55
  3. [Batch] Créer une chaine à partir d'une variable et d'une autre chaine
    Par mlle lain dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 10/11/2009, 16h26
  4. Réponses: 5
    Dernier message: 22/05/2008, 14h42
  5. Réponses: 4
    Dernier message: 11/04/2008, 15h02

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