私はRにかなり慣れていませんが、Rを使用すればするほど、それがSASまたはSPSSよりも実際にどれほど強力であるかがわかります。私が見るように、主要な利点の1つは、Webからデータを取得して分析できることです。これは可能だと思いますが(おそらく簡単なことかもしれません)、Webで公開されているJSONデータを解析したいと考えています。私は一気にプログラマーではないので、あなたが提供できるヘルプや指示は大いに感謝されます。基本的な使用例を教えても、おそらく私はそれを通して作業することができます。
回答:
Omegahatの RJSONIOは、JSON形式でデータを読み書きする機能を提供する別のパッケージです。
rjsonはS4 / S3メソッドを使用しないため、容易に拡張できませんが、それでも有用です。残念ながら、これはベクトル化された演算を使用していないため、重要なデータには遅すぎます。同様に、JSONデータをRに読み込む場合、これはやや遅く、問題が発生した場合に大きなデータにスケーリングされません。
更新(新しいパッケージ2013-12-03):
jsonlite:このパッケージは、パッケージのフォークですRJSONIO
。それはからのパーサー上に構築されますが、RJSONIO
RオブジェクトとJSON文字列の間の異なるマッピングを実装します。このパッケージのCコードは主にRJSONIO
パッケージからのものであり、Rコードはゼロから書き直されています。fromJSON
およびのドロップイン置換に加えてtoJSON
、パッケージにはオブジェクトをシリアル化する関数があります。さらに、パッケージには多くの単体テストが含まれており、すべてのエッジケースがシステムおよびアプリケーションの動的データで使用するために一貫してエンコードおよびデコードされていることを確認します。
jsonliteパッケージには、データフレームに変換するために、JSONを使用して試行するのは簡単です。
例:
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)
jsonlite
スープを食べるフォークとほぼ同じくらい便利です。
これが不足している例です
library(rjson)
url <- 'http://someurl/data.json'
document <- fromJSON(file=url, method='C')
RJSONIO、rjson、jsonliteの関数fromJSON()は、ネストされた複雑なjsonオブジェクトの単純な2D data.frameを返しません。
これを克服するには、tidyjsonを使用できます。jsonを受け取り、常にdata.frameを返します。現在CRANでは利用できません。https://github.com/sailthru/tidyjsonで入手できます。
更新: tidyjsonがクランで利用可能になりました。直接使用してインストールできます。install.packages("tidyjson")