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 :

Importation chiffre 0 en debut de valeur


Sujet :

R

  1. #1
    Candidat au Club
    Femme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mai 2013
    Messages : 8
    Points : 4
    Points
    4
    Par défaut Importation chiffre 0 en debut de valeur
    Bonjour,

    J'ai un gros gros souci, je me casse la tête dessus mais en vain.
    Je dispose de fichiers tout d'abord csv. J'ai une colonne importante qui représente des codes: 0015, 0036,0368....
    Les zéros au début des obs ne s affichent pas dans mon fichier csv. Je décide de les convertir en txt et enfin ils s'affichent.
    Je me dis que par ce passage, je peux donc les recuperer sous R. Mais avec un read.table, R ne retient toujours pas les 0 au début, qui sont importants, contenus dans les txt.

    Help je désespère merci !

  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 018
    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 018
    Points : 23 710
    Points
    23 710
    Par défaut
    Bonjour,

    Parmi les paramètres de la fonction read.table, vous avez le paramètre colClasses qui permet de spécifier le type de chacune des colonnes dans votre fichier CSV.
    C'est un vecteur dans lequel vous mettez le type de chaque colonne.

    Si votre fichier contient, par exemple, 4 colonnes dont les 2 premières sont des chaînes de caractères (commençant par 00... notamment) et les suivantes des nombres, il suffit de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    read.tables("mon_fichier.csv", colClasses = c("character", "character", "numeric", "numeric")
    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
    Femme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mai 2013
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par ced Voir le message
    Bonjour,

    Parmi les paramètres de la fonction read.table, vous avez le paramètre colClasses qui permet de spécifier le type de chacune des colonnes dans votre fichier CSV.
    C'est un vecteur dans lequel vous mettez le type de chaque colonne.

    Si votre fichier contient, par exemple, 4 colonnes dont les 2 premières sont des chaînes de caractères (commençant par 00... notamment) et les suivantes des nombres, il suffit de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    read.tables("mon_fichier.csv", colClasses = c("character", "character", "numeric", "numeric")

    Merci beaucoup pour ta réponse rapide mais en faisant cela:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     tab<-read.table("mon_fichier.csv", colClasses = c("character", "character","character", "character", "character", "numeric", "numeric","numeric"))

    J'obtiens :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Error in scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings,  : 
      line 1 did not have 8 elements
    alors que j'ai vraiment 8 colonnes..?

  4. #4
    Membre confirmé
    Inscrit en
    Mars 2013
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Mars 2013
    Messages : 208
    Points : 461
    Points
    461
    Par défaut
    Salut,

    Pour lire correctement un fichier, il faut déjà indiquer le bon séparateur!

    read.table prend comme argument sep égal à "" par défaut. Pour un csv tu devrais mettre sep="," ou sep=";" .

    Tu remarqueras qu'il existe deux fonctions read.csv et read.csv2 similaires à read.table mais dont les paramètres par défauts sont faits pour lire des .csv.

    Tout est très bien expliqué sur ?read.table.

  5. #5
    Candidat au Club
    Femme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mai 2013
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    Merci beaucoup Sengar pour ta réponse

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

Discussions similaires

  1. [DEBUTANT] recuperer valeur base de donnees en vb
    Par calitom dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 17/02/2009, 09h05
  2. Chercher à partir d'un debut de valeur
    Par freyliss dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 25/07/2007, 17h16
  3. [debutant] changer valeur d'un tableau
    Par Emcy dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 29/11/2006, 08h31
  4. debutant: ecrire valeur d'une page à l'autre
    Par emelaz dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 02/05/2006, 07h12
  5. [debutant] incrementer valeur champ input text
    Par ilood dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/07/2005, 13h21

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