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 :

conversion data.frame en matrice numerique


Sujet :

R

  1. #1
    Futur Membre du Club
    Homme Profil pro
    bioinformatique
    Inscrit en
    Avril 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : bioinformatique
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2009
    Messages : 5
    Points : 7
    Points
    7
    Par défaut conversion data.frame en matrice numerique
    Bonjour,

    J'ai besoin d'utiliser une matrice numérique dans une fonction qui demande une matrice numerique. Seulement quand j'importe ma matrice avec read.table , je recupère une data.frame de liste que j'arrive pas à convertir en matrice numerique.
    Il y a bien que des chiffres dans mon fichier de départ à part la premiere colonne mais il ne veut pas convertir. J'ai un peu tout essayé avec les as.vector, as.numeric, as.matrix... mais je n'y arrive pas.

    merdi d'avance !

  2. #2
    Futur Membre du Club
    Homme Profil pro
    bioinformatique
    Inscrit en
    Avril 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : bioinformatique
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2009
    Messages : 5
    Points : 7
    Points
    7
    Par défaut [RESOLU]utilisation de row.names
    Bon j'ai résolu le problème en utilisant l'argument row.names = 1 dans la fonction read.table. De cette façon, j'utilise juste la fonction as.matrix pour convertir ma data.frame en matrice qui est déjà numérique.

  3. #3
    Candidat au Club
    Femme Profil pro
    Chargée d'Etude
    Inscrit en
    Août 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Chargée d'Etude

    Informations forums :
    Inscription : Août 2017
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    J'ai actuellement le même souci que toi.
    J'ai un data.frame avec des chiffres dedans (0.15478965 ou -0.3568958). Je souhaite le transformer en matrice numérique de telle sorte à effectuer des petits calculs sur les données.
    Lorsque je fais as.matrix, il me convertit mes cases en "character".

    J'ai essayé ta technique avec row.names = 1 dans l'importation mais ça ne change rien ...

    Quelqu'un peut m'aider ?

  4. #4
    Membre confirmé
    Inscrit en
    Février 2011
    Messages
    276
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 276
    Points : 561
    Points
    561
    Par défaut
    Bonjour,

    le row.names = 1 sert uniquement à spécifier que la première colonne du fichier contient des étiquettes pour les lignes et non des données à proprement parler.
    Ton erreur fait plus penser à un problème de séparateur décimal. Par défaut il s'agit d'un point mais si tu as des nombres décimaux qui utilisent une virgule alors il te faut spécifier dec = "," comme argument de la fonction read.table.
    Par défaut quand R ne reconnait pas de nombres décimaux, il importe les données sous forme de facteur qui seront convertis en "character" par la fonction as.matrix.

    Cordialement

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

Discussions similaires

  1. Conversion Data.Frame en Matrix
    Par Momoze dans le forum R
    Réponses: 2
    Dernier message: 06/02/2011, 22h47
  2. Mean par colonne dans une data frame
    Par manoir dans le forum R
    Réponses: 3
    Dernier message: 19/06/2009, 11h06
  3. Trier une data frame
    Par manoir dans le forum R
    Réponses: 4
    Dernier message: 28/04/2009, 16h29
  4. Réponses: 10
    Dernier message: 02/03/2009, 17h24
  5. Réponses: 2
    Dernier message: 14/11/2008, 14h53

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