web-dev-qa-db-fra.com

Dans read.table (): dernière ligne incomplète trouvée par readTableHeader

J'ai un fichier CSV lorsque j'essaie de read.csv() ce fichier, le message d'avertissement suivant s'affiche:

In read.table(file = file, header = header, sep = sep, quote = quote,  :
  incomplete final line found by readTableHeader on ...

Et je ne peux pas isoler le problème, malgré le fait que StackOverflow et R-help aient été recherchés.

Ceci est le lien Dropbox pour les données: https://www.dropbox.com/s/h0fp0hmnjaca9ff/PING%20CONCOURS%20DONNES.csv

14
user3351370

Comme expliqué par Hendrik Pon , le message indique que la dernière ligne du fichier ne se termine pas par un caractère de fin de ligne (saut de ligne (\ n) ou retour chariot + retour à la ligne (\ r\n) ).

Le remède est simple:

  • Ouvrir le fichier
  • Naviguez jusqu'à la dernière ligne du fichier
  • Placez le curseur à la fin de cette ligne
  • Appuyez sur Entrée/Entrée
  • Sauvegarder le fichier

alors voici votre dossier sans préavis

df=read.table("C:\\Users\\Administrator\\Desktop\\tp.csv",header=F,sep=";")
 df
    V1               V2               V3               V4               V5               V6               V7               V8               V9              V10
1 Date 20/12/2013 09:04 20/12/2013 09:08 20/12/2013 09:12 20/12/2013 09:16 20/12/2013 09:20 20/12/2013 09:24 20/12/2013 09:28 20/12/2013 09:32 20/12/2013 09:36
2    1           1,3631           1,3632           1,3634           1,3633            1,363           1,3632           1,3632           1,3632           1,3629
3    2          0,83407          0,83408          0,83415          0,83416          0,83404          0,83386          0,83407          0,83438          0,83472
4    3           142,35           142,38           142,41            142,4           142,41           142,42           142,39           142,42            142,4
5    4           1,2263          1,22635          1,22628          1,22618          1,22614          1,22609          1,22624          1,22643           1,2265

Mais je pense que vous ne devriez pas lire de cette façon car vous devez à nouveau remodeler le cadre de données, merci.

17
Aashu

J'ai rencontré le même problème lors de la création d'une matrice de données dans le bloc-notes . Maintenant, j'ai une matrice de données "n" et une nouvelle ligne vide avec curseur au début de la ligne "n + 1" . Problème résolu. 

2
aditya harbola

J'ai eu le même problème avec les fichiers .xls . Ma solution consiste à enregistrer le fichier sous forme de fichier .txt délimité par des tabulations. Ensuite, vous pouvez également modifier manuellement l'extension .txt en .xls, puis vous pouvez ouvrir le cadre de données avec read.delim.

C'est un moyen très impoli de surmonter le problème de toute façon.

1
Quechua

Ce n’est pas un fichier CSV, chaque ligne est une colonne, vous pouvez l’analyser manuellement, par exemple:

file <- '~/Downloads/PING CONCOURS DONNES.csv'
lines <- readLines(file)
columns <- strsplit(lines, ';')
headers <- sapply(columns, '[[', 1)
data <- lapply(columns, '[', -1)
df <- do.call(cbind, data)
colnames(df) <- headers
print(head(df))

Notez que vous pouvez ignorer l'avertissement, car la dernière fin de ligne est manquante.

0
Karl Forner