Lesen einer großen json-Datei in R , Probleme
Ich versuche zu Lesen, sehr großen json-Datei mit R , und ich bin mit dem RJSON Bibliothek mit diesem commend json_data <- fromJSON(paste(readLines("myfile.json"), collapse=""))
Das problem ist, dass ich immer diese Fehlermeldung
Error in paste(readLines("myfile.json"), collapse = "") :
konnte nicht Speicher (2383 Mb) in der C-Funktion 'R_AllocStringBuffer'
Kann mir jemand helfen mit diesem Problem
- R ist nicht die beste für wirklich große Daten-Dateien, er lädt alle Daten in den Speicher. Möglicherweise benötigen Sie die Datei inkrementell
- Um genauer zu sein die R-engine wird nicht lassen Sie Lesen ein string so groß wie Ihre Datei, und rjson ist zu Lesen versucht, die ganze Sache auf einmal.
- Vielen Dank für Ihren Kommentar, aber was sollte ich tun, um Lesen Sie die json-Datei.
- Haben Sie eine Kopie der json-Datei irgendwo??? In der Regel große json-dumps veröffentlicht streamable jsonlines-format finden Sie unter
?stream_in
imjsonlite
Paket.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gut, nur meine Erfahrungen über Lesen json-Datei. die Fortschritte der
Ich bin versucht zu Lesen 52.8 MB,19.7 MB,1,3 GB,93.9 MB,158.5 MB json-Dateien kostet mich 30 Minuten und schließlich die auto-resume-R-Sitzung nach, der versucht hat, sich zu bewerben, parallel computing und würde gerne den Fortschritt sehen, aber gescheitert sind.
https://github.com/hadley/plyr/issues/265
Und dann habe ich versucht den parameter hinzufügen pagesize = 10000, seine Arbeit und effizienter denn je. Gut, wir brauchen nur einmal gelesen und später speichern als RData/Rda/Rds-format von saveRDS.
Ich hab das gleiche problem bei der Arbeit mit großen Datenmengen in der R., die ich benutzt hatte jsonlite package in R für Lesen, json, in R. hatte ich den folgenden code zu Lesen, json, in R:
hier tweets.json ist das meine Datei Namen und den Ort, wo es vorhanden ist,pagesize gibt an, wie viele die Anzahl der Zeilen liest es in einer iteration.Hoffe, es hilft.
Aus irgendeinem Grund die oben genannten Lösungen verursacht, die R beenden oder noch schlimmer.
Diese Lösung funktionierte für mich, mit denselben Daten:
Dauerte etwa 15 Minuten