Ich bin ziemlich neu in R, aber je mehr es verwendet, desto mehr sehe ich, wie mächtig es wirklich über SAS oder SPSS ist. Einer der wichtigsten Vorteile, wie ich sie sehe, ist die Fähigkeit, Daten aus dem Internet zu bekommen und zu analysieren. Ich stelle mir vor, dass dies möglich ist (und vielleicht sogar einfach), aber ich möchte JSON-Daten parsen, die im Internet öffentlich verfügbar sind. Ich bin kein Programmierer, also jede Hilfe und Anweisung, die Sie zur Verfügung stellen können, wird sehr geschätzt. Selbst wenn Sie mich auf ein grundlegendes Arbeitsbeispiel hinweisen, kann ich es wahrscheinlich durcharbeiten.Parse JSON mit R
Antwort
RJSONIO von Omegahat ist ein weiteres Paket, das Funktionen zum Lesen und Schreiben von Daten im JSON-Format bietet.
rjson verwendet keine S4/S3-Methoden und ist daher nicht leicht erweiterbar, aber immer noch nützlich. Leider verwendet es keine vektorisierten Operationen und ist daher für nicht-triviale Daten zu langsam. Ähnlich ist es beim Lesen von JSON-Daten in R etwas langsam und skaliert daher nicht zu großen Daten, falls dies ein Problem sein sollte.
aktualisieren (neue Package 2013.12.03):
jsonlite: Dieses Paket ist ein Fork des RJSONIO
Paket. Es baut auf dem Parser von RJSONIO
auf, implementiert jedoch eine andere Zuordnung zwischen R-Objekten und JSON-Zeichenfolgen. Der C-Code in diesem Paket stammt hauptsächlich aus dem RJSONIO
Paket, der R-Code wurde von Grund auf neu geschrieben. Zusätzlich zu den Drop-In-Ersetzungen für fromJSON
und toJSON
verfügt das Paket über Funktionen zum Serialisieren von Objekten. Darüber hinaus enthält das Paket eine Vielzahl von Komponententests, um sicherzustellen, dass alle Edge-Cases einheitlich für die Verwendung mit dynamischen Daten in Systemen und Anwendungen codiert und decodiert werden.
Hier ist das fehlende Beispiel
library(rjson)
url <- 'http://someurl/data.json'
document <- fromJSON(file=url, method='C')
dies funktionierte für mich, aber Sie möchten nicht eine Zeichenfolge für den Namen der Dateivariablen übergeben, wie gezeigt. – mrjrdnthms
Für die Aufzeichnung rjson und RJSONIO Sie den Dateityp ändern, aber sie nicht wirklich analysieren per se. Zum Beispiel erhalte ich hässliche MongoDB-Daten im JSON-Format, konvertiere sie mit rjson oder RJSONIO, benutze dann unlist und tonnenweise manuelle Korrektur, um sie tatsächlich in eine brauchbare Matrix zu zerlegen.
Das jsonlite Paket ist einfach zu verwenden und versucht, JSON in Datenrahmen zu konvertieren.
Beispiel:
library(jsonlite)
# url with some information about project in Andalussia
url <- 'http://www.juntadeandalucia.es/export/drupaljda/ayudas.json'
# read url and convert to data.frame
document <- fromJSON(txt=url)
Das war unglaublich einfach zu benutzen für das, was ich brauchte. Vielen Dank –
Dokument <- fromJSON (file = url); #aber die Anfrage läuft ab – EngrStudent
Liebe das. Scheint viel besser als das von rjson geschaffene Durcheinander. – randominstanceOfLivingThing
Die Funktion fromJSON() in RJSONIO, rjson und jsonlite keine einfache 2D data.frame für komplexe verschachtelte JSON-Objekte zurück.
Um dies zu umgehen, können Sie ordyjson verwenden. Es nimmt einen JSON auf und gibt immer einen Datenrahmen zurück. Es ist derzeit nicht availble in CRAN, können Sie es hier: https://github.com/sailthru/tidyjson
Update: tidyjson ist jetzt in Cran verfügbar, können Sie es installieren direkt install.packages("tidyjson")
Versuchen unter Code mit RJSONIO in Konsole
library(RJSONIO)
library(RCurl)
json_file = getURL("https://raw.githubusercontent.com/isrini/SI_IS607/master/books.json")
json_file2 = RJSONIO::fromJSON(json_file)
head(json_file2)
- 1. Parse verschachtelte JSON zu Datenrahmen in R
- 2. Parse JSON mit Hashtag
- 3. Parse Json mit Ant
- 4. Parse JSON mit jQuery
- 5. Parse JSON mit Vala
- 6. Parse JSON ohne Plugins
- 7. Parse JSON mit .NET 2.0
- 8. JSON Parse Fehler mit jQuery.parseJSON
- 9. Parse Json-Datei mit SAS
- 10. Parse JSON mit Namensfeld Strich
- 11. Parse JSON mit Swift/SwiftyJSON
- 12. Parse JSON-Datei mit Gson
- 13. Parse JSON mit gwt 2.0
- 14. Parse JSON Array
- 15. JSON Parse C#
- 16. JSON Array & Parse Antwort
- 17. Handhabung json Parse-play
- 18. JSON Parse File Path
- 19. jQuery Parse JSON URL
- 20. Json Parse android
- 21. VB.NET Json Parse
- 22. JSON Parse-Datetime
- 23. Parse Json Von URL
- 24. JSON Parse [und]
- 25. JSon Parse aus Wiki
- 26. Android Parse HAL + JSON
- 27. Ruby-Parse String JSon
- 28. Json Parse Python Fehler
- 29. AngularJS JSON Parse (Ajax)
- 30. Parse JSON über WebRequest
fand ich [dieser Vergleich] (http://rstudio-pubs-static.s3.amazonaws.com/31702_9c22e3d1a0c44968a4a1f9656f1800ab.html) von rjson, RJSONIO und jsonlite hilfreich – Eric
der Vergleich Link oben ist tot. Ist [das] (https://rstudio-pubs-static.s3.amazonaws.com/31702_9c22e3d1a0c44968a4a1f9656f1800ab.html) der richtige Link?(Der Unterschied ist https) – woodvi