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 :

Chiffres en mode caractère avec read.table


Sujet :

R

  1. #1
    Membre actif
    Inscrit en
    Novembre 2003
    Messages
    543
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 543
    Points : 239
    Points
    239
    Par défaut Chiffres en mode caractère avec read.table
    Bonjour,
    Je dispose d'une base de données communale avec les numéros de commune comme identifiant.
    Ces numéros sont sur 5 caractères, avec les 2 premiers caractères qui définissent le département.

    Je souhaiterais savoir s'il existe un paramètre de la fonction read.table, pour signaler que ces numéros sont à prendre comme des caractères, et non comme des nombres.

    Par exemple, pour les communes du genre "01256" (commune n°256 du département de l'Ain), read.table me transforme le numéro en nombre, c'est-à-dire en 1256 ; et oublie le 0 au passage.

    Est-ce que quelqu'un connaitrait ça ?

  2. #2
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Janvier 2006
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 476
    Points : 831
    Points
    831
    Par défaut
    bonjour,
    essaye le package readr tu trouveras la fonction voulue et avec le parametre col_type tu peux forcer le type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ....,col_types = cols(la_colonne= col_character())l

  3. #3
    Membre actif
    Inscrit en
    Novembre 2003
    Messages
    543
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 543
    Points : 239
    Points
    239
    Par défaut
    Citation Envoyé par xavier-Pierre Voir le message
    ... essaye le package readr ...
    Ok, merci.
    Je vais essayer mais je suis surpris que la fonction read.table ne permette pas ce genre de chose !

  4. #4
    Membre actif Avatar de Alpacky
    Homme Profil pro
    .
    Inscrit en
    Mars 2014
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Mars 2014
    Messages : 99
    Points : 200
    Points
    200
    Par défaut
    elle permet ce genre de choses voir l'help

    as.is
    the default behavior of read.table is to convert character variables (which are not converted to logical, numeric or complex) to factors. The variable as.is controls the conversion of columns not otherwise specified by colClasses. Its value is either a vector of logicals (values are recycled if necessary), or a vector of numeric or character indices which specify which columns should not be converted to factors.

    Note: to suppress all conversions including those of numeric columns, set colClasses = "character".

    Note that as.is is specified per column (not per variable) and so includes the column of row names (if any) and any columns to be skipped.

    colClasses
    character. A vector of classes to be assumed for the columns. If unnamed, recycled as necessary. If named, names are matched with unspecified values being taken to be NA.

    Possible values are NA (the default, when type.convert is used), "NULL" (when the column is skipped), one of the atomic vector classes (logical, integer, numeric, complex, character, raw), or "factor", "Date" or "POSIXct". Otherwise there needs to be an as method (from package methods) for conversion from "character" to the specified formal class.

    Note that colClasses is specified per column (not per variable) and so includes the column of row names (if any).

    cdlt

  5. #5
    Membre actif
    Inscrit en
    Novembre 2003
    Messages
    543
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 543
    Points : 239
    Points
    239
    Par défaut
    Merci pour la réponse.
    En français ça donnerait quoi (désolé, je ne maîtrise que très peu la langue de Shakespeare) ?

  6. #6
    Membre actif Avatar de Alpacky
    Homme Profil pro
    .
    Inscrit en
    Mars 2014
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Mars 2014
    Messages : 99
    Points : 200
    Points
    200
    Par défaut
    bonjour,

    désolé, tu peux juste spécifier le type "character" etc de la même façon qu'avec la fonction du package readr,
    qqc dans ce goût la
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mydata <- read.csv("huge-file.csv", header = TRUE, colClasses = c("character", "character", "factor", "character", "integer", "numeric", "character", "Date", "logical")))

  7. #7
    Membre actif
    Inscrit en
    Novembre 2003
    Messages
    543
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 543
    Points : 239
    Points
    239
    Par défaut
    Citation Envoyé par Alpacky Voir le message
    désolé, tu peux juste spécifier le type "character" etc de la même façon qu'avec la fonction du package readr,
    Bonjour,
    Merci de ta réponse, c'est exactement ce que je cherchais

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 20/10/2022, 15h29
  2. Erreur avec read.table()
    Par Fort en pommes dans le forum R
    Réponses: 7
    Dernier message: 04/03/2014, 14h22
  3. Importation de données avec read.table
    Par collosus dans le forum R
    Réponses: 3
    Dernier message: 27/05/2013, 10h51
  4. Réponses: 2
    Dernier message: 24/02/2012, 10h54
  5. Problème avec read.table()
    Par skystef dans le forum R
    Réponses: 7
    Dernier message: 19/02/2010, 09h56

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