2016-04-22 7 views
0

私はBLSからRにAPIデータを読み込もうとしています。私は、登録を必要とせず、一般に公開されているバージョン1.0を使用しています。ここでfromJSON(raw.data)のエラー:不完全リスト

は私のコードです:

url <-"http://api.bls.gov/publicAPI/v1/timeseries/data/LAUCN040010000000005" 
raw.data <- readLines(url, warn = F) 

library(rjson) 

rd <- fromJSON(raw.data) 

そして、ここでは、私はエラーメッセージです:私はちょうど私のwebrowserでのURLに移動しようとした場合

Error in fromJSON(raw.data) : incomplete list 

それは(引く動作するようですJSONのWebページを開く)。

length(raw.data) 

あなたは個々に見ることができます:あなたが返されるオブジェクトは長さ4のベクトルで、readLines使用したらR.

答えて

2

にこれを取得するために、私がしようとしたときに何が起こっているか本当にわかりません経由作品:

raw.data[1] 

あなたはpaste

fromJSON(paste(raw.data, collapse = "")) 
を使用して戻って一緒に作品を貼り場合

すべてが動作します。代わりに、

jsonlite::fromJSON(url) 
+0

ありがとうございましたcsgillespie、あなたのソリューションは素晴らしいです! あなたの最後のコードの構文は、基本的にjsonliteパッケージから、変数urlのfromJSON関数を使用していますか? これも同様です(出力はわずかですが)。私はjsonliteパッケージ(library(jsonlite))をロードせずに動作することに驚いています。私はそのパッケージをインストールしましたが、ロードされていません。 –

+0

はい。 'rjson :: fromJSON'と同じです。パッケージの読み込みを回避するだけで、関連するすべての関数を呼び出すことができます。 – csgillespie