2016-04-15 4 views
0

jsonの文字列をベクトル化してリストに変換する方法があるかどうかを知りたい、言い換えればリストを使用できるかどうかを知りたいjsonはRのリストのリストに変換しますjsonをベクター化された方法でリストに変換するR

Jsonからリストへの変換には多くのオプションがあります。しかし、それらのすべては時には1つのjson文字列を受け入れるだけです。

私はJSON形式のリストを以下している:

x = 
c("{"employees":[ 
{"firstName":"John", "lastName":"Doe"}, 
{"firstName":"Anna", "lastName":"Smith"}, 
{"firstName":"Peter", "lastName":"Jones"} 
]}", 
{"employees":[ 
{"firstName":"John", "lastName":"Doe"}, 
{"firstName":"Anna", "lastName":"Smith"}, 
{"firstName":"Peter", "lastName":"Jones"} 
]}) 

は今、私はリストに変換したいです。今はforeachパッケージを使用してリストに変換します。

library(jsonlite) 
library(foreach) 
library(doParallel) 
registerDoParallel(cores = 2) 

z <- foreach(i = 1:length(x), .combine = 'rbind') %dopar% { 
fromJSON(x[1])} 

しかし、私は次のような何かをしたい:

z <- Vectroize_fromJSON(x) 

任意のアイデアをされて、次のコードは、私が使用するものですか?

注:foreachを使用している理由は、通常のforループよりも高速であることがわかりました。しかし、jsonのリストが大きい場合、それは実用的ではなくなります。

+0

「x」はjson文字列のリストですか? Rは "[]"のような構文をコレクションとして受け入れません。 – Psidom

+0

ありがとう、更新された質問 –

答えて

1

これはあなたが望むものに近いものですか?

vectorize_fromJSON <- Vectorize(fromJSON) 
z <- vectorize_fromJSON(x) 
+0

jsonをrのリストに変換するときにちょうど番号を割り当てる方法を知っていますか?現在、jsonの文字列をリストに変数名として入れています。 –

+0

変数名が文字列かどうかは関係ありません。なぜなら、数値インデックスを指定して要素を抽出できるからです。たとえば、 'li < - list(a = 3)'そして 'li [[1]] == li $ a = 3' – Psidom

関連する問題