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 avec read.table()


Sujet :

R

  1. #1
    Membre du Club
    Inscrit en
    Février 2006
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 174
    Points : 62
    Points
    62
    Par défaut Problème avec read.table()
    Bonjour, malgré la lecture de tutoriels et de l'aide du logiciel R, je n'arrive pas à charger un fichier txt contenant des données formatées comme suit :

    O 1 2 3
    P1 23 5 45
    P2 43 24 23

    j'obtiens souvent le message :

    Erreur dans scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings, :
    la ligne 2 n'avait pas 2 éléments
    +

  2. #2
    Membre expert
    Avatar de pitipoisson
    Homme Profil pro
    Chercheur
    Inscrit en
    Septembre 2006
    Messages
    1 942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Chercheur
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 942
    Points : 3 378
    Points
    3 378
    Par défaut
    Bonjour,

    Il nous faut un peu plus d'info pour pouvoir t'aider...
    Quel type de séparateur dans le fichier texte ? espaces ? tabulations ?
    Présence/absence d'en-tête de colonnes ?
    Et surtout, les lignes de code qui t'ont données cette erreur ?
    etc.
    Forum LaTeX : pour des réponses rapides et appropriées, pensez à poster un
    ECM = Exemple (reproduit le problème) Complet (document compilable) Minimal (ne postez pas votre thèse !)

    Une solution vous convient ? N'oubliez pas le tag


    )><))))°>

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Erreur dans scan
    Bonjour,
    J'ai le même Pb que skystef (R n'arrive pas à lire des fichiers),
    Dans mon cas J'ai 13 variables dans 13 colonnes et 107 observations (sites)
    j'ai enregistré mon fichier excel dans texte (séparateur : tabulation),
    R n'arrive pas à lire mon tableau j'ai ce message:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Erreur dans scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings,  :   la ligne 2 n'avait pas 14 éléments
    Merci pour votre aide
    W123sb

  4. #4
    Ayest
    Invité(e)
    Par défaut
    Bonjour,

    Même remarque ptitpoisson. On ne peut pas aider si vous ne donnez pas la commande R que vous avez taper !
    Donner :
    1. les 5 premieres lignes du fichier de données
    2. la commande R telle que vous l'avez tapée
    Utiliser les balises CODE (cliquer sur le signe # qui est en haut de la fenetre d'edition) pour qu'on conserver le formattage de votre extrait de fichier.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    x y z
    0.1 0.2 0.6
    0.1 0.2 0.6
    0.1 0.2 0.6
    0.1 0.2 0.6

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Erreur dans scan
    Pardons je n'ai pas réusie à touve Utiliser les balises CODE je suis un débutant.

    Mon tableau de nom "classeur" au départ sous excel 2007,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    A	CF	S	K 	F	T	PI	OI	FI	KI	
    8	6	2	1,93	0,93	0,16	1,92	2,67	0	50	
    10	7	3	2,01	0,87	0,17	2,08	3	50	68	
    7	3	4	1,78	0,91	0,2	1,8	3	0	60	
    9      5      4       2,06  0,94  0,14   1,78   3      0      61,11
    je l'ai enregistré sous Texte(séparateur:tabulation) donc il devient "classeur.txt". je l'ai mis dans dans un répertoire Data-R et j'ai spécifié le chemin pour R.
    j'ai rentré cette la commande

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    > read.table("Classeur1.txt")
    Erreur dans scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings,  :   la ligne 2 n'avait pas 14 éléments.

    Merci pour votre aide
    W123sb

  6. #6
    Ayest
    Invité(e)
    Par défaut
    Essaie déjà ça : 'header' permet de spécifier que tu as une ligne de titre, et 'dec' spécifie que ton séparateur décimal est la virgule (au lieu du point)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    read.table("classeur.txt",header=TRUE,dec=",")
    Ensuite, pour utiliser la balise CODE, il suffit d'ecrire CODE entre crochet au début de ce que tu veux écrire, puis /CODE entre crochet à la fin de ce que tu as écrit.

    Edit : Tu parles d'un fichier "classeur.txt" et tu écris "Classeur1.txt" dans ta ligne de commande...

  7. #7
    Membre expert
    Avatar de pitipoisson
    Homme Profil pro
    Chercheur
    Inscrit en
    Septembre 2006
    Messages
    1 942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Chercheur
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 942
    Points : 3 378
    Points
    3 378
    Par défaut
    Bonjour,

    C'est normal, le séparateur par défaut de read.table n'est pas la tabulation, le nombre de colonne risque donc de ne pas coller... et même si c'était le cas, les données récupérées seraient fausses.

    Soit tu passes les bonnes options :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    > read.table("classeur.txt", header=TRUE, dec=",", sep="\t")
    soit tu utilise un profile prédéfini pour ton type de fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    read.delim2("classeur.txt")
    (ce sont des alias de read.table() avec des option prédéfinies, voir
    )

    Plus courant, c'est l'utilisation du format csv pour les données et l'usage des fonctions read.csv (locales "anglaises" prédéfinies : sep=",", dec=".") ou read.csv2 (locales françaises : sep=";", dec=",").
    Forum LaTeX : pour des réponses rapides et appropriées, pensez à poster un
    ECM = Exemple (reproduit le problème) Complet (document compilable) Minimal (ne postez pas votre thèse !)

    Une solution vous convient ? N'oubliez pas le tag


    )><))))°>

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Erreur Scan
    Ca marche, j'ai suivie vos recommandations,
    maintenant j'attaque la partie faire des ACP.

    Merci pour votre aide.
    W123sb

Discussions similaires

  1. [XSL~FO] Problème avec une table de plus d'une page
    Par ganga dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 25/01/2007, 20h16
  2. [JSTL] Problème avec une table
    Par lionelh dans le forum Taglibs
    Réponses: 3
    Dernier message: 22/02/2006, 21h26
  3. [MySQL] Problème avec TRUNCATE TABLE
    Par philippef dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 06/01/2006, 14h41
  4. Problème avec une table
    Par Paulinho dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 15/12/2005, 10h17
  5. Problème avec mes tables de relation...
    Par mmike dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 02/06/2003, 15h16

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