Ich habe eine CSV, wenn ich versuche, diese Datei zu read.csv()
zu bekommen. Ich erhalte die Warnmeldung:
In read.table(file = file, header = header, sep = sep, quote = quote, :
incomplete final line found by readTableHeader on ...
Und ich kann das Problem nicht isolieren, obwohl StackOverflow und R-help nach Lösungen durchsucht werden.
Dies ist der Dropbox-Link für die Daten: https://www.dropbox.com/s/h0fp0hmnjaca9ff/PING%20CONCOURS%20DONNES.csv
Wie in Hendrik Pon erläutert, zeigt die Nachricht an, dass die letzte Zeile der Datei nicht mit einem Endzeichen (EOL) endet (Zeilenvorschub (\ n) oder Wagenrücklauf + Zeilenvorschub (\ r\n) ).
Die Abhilfe ist einfach:
also hier ist Ihre Datei ohne Vorwarnung
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
Aber ich denke, Sie sollten nicht auf diese Weise lesen, weil Sie den Datenrahmen erneut umformen müssen, danke.
Das gleiche Problem hatte ich beim Erstellen einer Datenmatrix in Notepad. Daher kam ich zur letzten Zeile der Datenmatrix und drückte die Eingabetaste. Jetzt habe ich eine "n" -Zeilen-Datenmatrix und eine neue leere Zeile mit dem Cursor am Anfang von "n + 1" -Zeile . Problem gelöst.
Ich hatte das gleiche Problem mit den XLS-Dateien .. Meine Lösung besteht darin, die Datei als tabulatorbegrenzte TXT-Datei zu speichern. Dann können Sie die Erweiterung .txt auch manuell in .xls ändern. Anschließend können Sie den Datenrahmen mit read.delim
öffnen.
Dies ist ein sehr unhöflicher Weg, das Problem trotzdem zu lösen.
Dies ist keine CSV-Datei. Jede Zeile ist eine Spalte. Sie können sie manuell analysieren, z. B .:
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))
Beachten Sie, dass Sie die Warnung ignorieren können, da das letzte Zeilenende fehlt.