在R中以矢量化方式将json转换为list

时间:2016-04-15 22:52:26

标签: json r foreach

我想知道是否有任何方法可以将json字符串转换为矢量化方式的列表,换句话说,我想知道是否可以使用json列表转换为R中的列表列表

有许多选项可以从Json转换为列表。但是,他们所有人都只接受一个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的列表很大时,它变得不切实际。

1 个答案:

答案 0 :(得分:1)

这是否接近你想要的东西?

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