web-dev-qa-db-fra.com

Erreur lors de la lecture du fichier csv dans R

J'ai des problèmes pour lire un fichier csv avec R.

 x=read.csv("LorenzoFerrone.csv",header=T)

Error in make.names(col.names, unique = TRUE) : 
      invalid multibyte string at '<ff><fe>N'

Je peux lire le fichier en utilisant libre office sans aucun problème. 

Je ne peux pas télécharger le fichier car il est plein d'informations sensibles.

Que puis-je faire? 


La définition du codage semble être la solution au problème.

> x=read.csv("LorenzoFerrone.csv",fileEncoding = "UCS-2LE")
> x[2,1]
[1] Adriano Caruso
100 Levels:  Ada Adriano Caruso adriano diaz Adriano Diaz alberto ferrone Alexey ... Zia Tina
10
Donbeo

Vous devez spécifier le délimiteur correct dans l'argument sep.

2
Sanjay Kulkarni

La cause est un encodage invalide. J'ai résolu de remplacer tous les "è" par e

8
Antonello Salis

J'ai trouvé que ce problème est causé par le code du fichier et que j'ai résolu ce problème en l'ouvrant avec Windows note, en enregistrant avec UTF-8 et en le rouvrant avec Excel (il s'est tout d'abord brouillé), puis en enregistrant à nouveau avec UTF-8 !

2
Charlie Lee

Changez le format de fichier en - CSV UTF-8. Cela a fonctionné pour moi.

1
VISHAL TIWARI

Généralement, un problème d'encodage. Vous pouvez essayer de changer le codage ou bien de supprimer le caractère incriminé (utilisez simplement votre éditeur favori et remplacez toutes les occurrences). Dans certains cas, R créera l'emplacement du caractère, par exemple:

chaîne multi-octets non valide 1847

Ce qui devrait vous rendre la vie plus facile. Notez également que vous devrez peut-être répéter ce processus plusieurs fois (en supprimant tous les caractères incriminés ou en essayant plusieurs codages). 

1
AlonG

Cela lira les noms de colonne tels quels et ne renverra aucune erreur:

x = read.csv(check.names = F)

Pour supprimer/remplacer les caractères problématiques dans les noms de colonnes, utilisez ceci:

iconv(names(x), to = "ASCII", sub = "")
1
Balamurali N.R

Je ne sais pas si cela est utile, mais j’ai eu un problème similaire et j’ai compris que c’était parce que mon fichier "csv" avait un suffixe .csv, mais qu’il s’agissait en fait d’un fichier .xls! 

0
fredtal

Je sais que ceci est un ancien post, mais je voulais juste dire aux autochtones non anglais, que si vous utilisez "," comme séparateur décimal, 

0
pkpkPPkafa

J'ai résolu le problème en supprimant tout signe graphique dans l'écriture (c'est-à-dire les marques accentuées). Mes en-têtes étaient écrits en espagnol et comportaient quelques marques d'accent. J'ai remplacé par des mots simples (Mexique = Mexique) et le problème a été résolu.

0
Mariano

Je ne suis pas sûr que cela aide, je viens de résoudre un problème similaire que j’ai résolu en supprimant "du csv que j’essayais d’importer. La première ligne de la base de données contenait les noms de colonne" colname "," colname2 "," etc "et J'ai enlevé tous les "et le csv a été lu dans R très bien alors.

0
MarcoD