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 :

Problème conversion as.numeric matrice


Sujet :

R

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Problème conversion as.numeric matrice
    Bonjour à tous

    J'ai typiquement récupéré des données chiffrées d'une machine et j'aimerais faire une Analyse en Composantes Principales dessus (avec princomp ou Factominer par exemple). Hors je rencontre un problème : impossible de convertir mes données matricielles de mon fichier comme des données numériques....
    Mon code
    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
     
    # clear memory and graphics
    rm(list=ls())
    graphics.off()
     
    #packages required
    library(matlab)
    library(Factominer)
    library(graphics)
    library(stats)
     
    #Main
    Y <- read.csv("XXXX.csv", sep=";",row.names=1, header=TRUE) # pour avoir une idée c'est une matrice de 15 colonnes dont 8 chiffrées (les 7 autres sont des infos) et environ 25 000 lignes. 
    Y <- as.matrix(Y)          
    Z <- Y[,8:15] #Matrice pour les calculs ou mes données chiffrées sont présentes (données supérieures ou égales à 0)
     
    n <- dim(Z) # J'ai testé, les dimensions sont logiques et j'ai par exemple des nombres "3.1458" avec les guillemets et pas de NA en vues dans ma matrice
    rows<-n[1]
    cols<-n[2]
     
    Z2<-Z #travail sur une seconde matrice
    # change Z2 as a numeric value
    for ( i in 1:rows){
      for ( j in 1:cols){
        Z2[i,j]<-as.numeric(Z[i,j])   
      }
    }
     res<-princomp(Z2)
    Et la c'est le drame :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    > res<-princomp(Z2)
    Error in cov.wt(z) : 'x' must contain finite values only.
    Impossible de rentrer des valeurs numériques dans ma matrice. Un is.matrix me donne toujours un résultat négatif dans Z et Z2. J'ai essayé par exemple : Z[1,1] <-5 et mon 5 est aussi considéré comme une valeur non numérique.
    Auriez-vous une idée? Il se peut bien que cela vienne de moi à cause de la chaleur mais je sèche un peu et suit à cours d'idée et google ne m'a pas aidé sur ce coup...

    Bon après midi et merci

  2. #2
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Bon alors au final je viens de résoudre ce problème de matrice non numérique si cela en intéresse certains, avec:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    for ( i in 1:rows)
      {
      for ( j in 1:cols)
        {
        temp<- as.numeric(as.character(Z[i,j]))
        Z4[i,j]<-temp
      }
    }
    J'ai encore la même erreur avec ma fonction pour la PCA, mais au moins mon étape pour obtenir une matrice numérique est finie.

Discussions similaires

  1. problème conversion de matrice
    Par Ronan_ dans le forum OpenCV
    Réponses: 6
    Dernier message: 21/03/2014, 11h41
  2. [Débutant] Problème conversion tableau de cellule en matrice
    Par niepoc dans le forum MATLAB
    Réponses: 2
    Dernier message: 22/05/2008, 23h25
  3. Problème conversion temps
    Par Vodkha dans le forum Langage
    Réponses: 5
    Dernier message: 16/02/2006, 15h24
  4. Problème conversion float vers double
    Par jhenaff dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 27/01/2006, 10h39
  5. Problème conversion date
    Par mat.M dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 30/03/2004, 15h05

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