2014-01-19 2 views
37

Ich habe sehr große .csv-Datei, es ist um ein paar GB, ich möchte die ersten paar tausend Zeilen davon lesen. Gibt es eine Methode, dies zu tun?Wie liest man die ersten 1000 Zeilen der .csv-Datei in R?

+0

http://stackoverflow.com/questions/3094866/trimming-a-huge-3-5-gb-csv-file-to-read-into-r?rq=1 –

+0

Ich kam zu dieser Frage wiederholt, wenn schauen, wie man das gleiche Problem löst. Ich würde gerne Lösungen in readr lesen.csv etc. Und von der Anzahl der Treffer, upvotes und Favoriten denke, es wäre sinnvoll, die Frage erneut zu öffnen? – pluke

Antwort

55

Verwenden Sie das nrows Argument in read.csv(...)

df <- read.csv(file="my.large.file.csv",nrows=2000) 

Es gibt auch einen skip= Parameter, die read.csv(...), wie viele Zeilen erzählt zu überspringen, bevor Sie anfangen zu lesen.

Wenn Ihre Datei so groß ist, können Sie besser die Datei fread(...) im data.table-Paket verwenden. Die gleichen Argumente.

+0

Überspringen ist nicht sehr hilfreich, wenn die erste Zeile die Zeile der Spaltennamen ist. –

+1

@MatthewLundberg In diesem Fall kann man die erste Zeile mit n = 1 scannen(), dann 'read.csv' mit' skip = 'verwenden und danach die Spaltennamen hinzufügen. –

13

Wenn Sie unter UNIX oder OS/X sind, können Sie die Befehlszeile verwenden:

head -n 1000 myfile.csv > myfile.head.csv 

Dann einfach es in R wie normale lesen.

Verwandte Themen