2017-12-19 4 views
0

Ich habe einen Datensatz, der 4 GB komprimiert und mehr als 20 GB unkomprimiert wiegt.Wie lesen Sie einen großen Datensatz von .rar Erweiterung in R?

Die Datei kann heruntergeladen werden here.

Ich habe verschiedene Möglichkeiten versucht, es zu laden und es war nicht möglich. Es gibt ähnliche Fragen in stackoverflow (question1, question2)

Ich habe versucht, was sie vorschlagen, und ich habe die gleichen Probleme, die der Fragesteller. manuell die Erweiterung der Datei .rar-.gz und lesen Sie es zwei Möglichkeiten, zu ändern und nur ein paar Zeilen

Ich habe versucht, aber es funktioniert nicht:

Code:

#First attemp 
data <- read.table(gzfile("./data_in/song_log.gz"),header = F,sep=",",nrow=10) 
data <- read.csv(gzfile("./data_in/song_log.gz"),header = F,sep=",",nrow=10) 
data <- read.csv2(gzfile("./data_in/song_log.gz"),header = F,sep=",",nrow=10) 


#Triying with "ff" package 

library("ff") 
data <- ff::read.csv.ffdf(gzfile("./data_in/song_log.gz"),header = F,sep=",",nrow=10) 
Error in read.table.ffdf(FUN = "read.csv", ...) : 
    only ffdf objects can be used for appending (and skipping the first.row chunk) 

Irgendwelche Vorschläge für diesen Fall?

Vielen Dank im Voraus

Antwort

0
devtools::install_github("jimhester/archive") # mind the install guidelines at https://github.com/jimhester/archive/blob/master/configure#L64-L72 
library(archive) 

con <- archive_read("~/Data/song_log.rar") 

readLines(con, 3) 
## [1] "hora;userId;songId;generoId;deviceId;trendingSong" "18-12-2016 00:00:25;27103;231990117;23;1_27103;0" 
## [3] "18-12-2016 00:02:00;74637;241781021;24;1_74637;0" 

Sie können alles verwenden, die in einem R connection Objekt nehmen.

Ich bin nicht in 20GB für das Beispiel zu lesen, aber diese Zeilen funktionierten, und ich würde vorschlagen, Apache Drill mit dem sergeant Paket zu verwenden und diese CSV in Parkett umwandeln.

+0

Ich weiß nicht, was passiert, aber ich versuche diesen Code auszuführen und sofort habe ich die Bombe, die sagt "R Session Aborted" :-( –

Verwandte Themen