如何将多个JSON文件合并到R中的单个文件中

时间:2014-12-17 11:03:33

标签: json r

我有三个JSON文件

  • json1包含[[1,5],[5,7],[8,10]]
  • json2包含[[5,6],[4,5],[5,8]]
  • json3包含[[4,7],[3,4],[4,8]]

我想将它们合并到一个文件jsonmerge中:

  [[[1,5],[5,7],[8,10]],[[5,6],[4,5],[5,8]],[[4,7],[3,4],[4,8]]]

我尝试连接但是它以这种格式给出了结果

   [[5,6],[4,5],[5,8]],
   [[5,6],[4,5],[5,8]],
   [[4,7],[3,4],[4,8]]

有什么建议吗?

提前感谢。

1 个答案:

答案 0 :(得分:7)

如果您使用的是rjson软件包,则需要将它们连接到一个列表中:

library(rjson)
json1 <- fromJSON(file = "json1")
json2 <- fromJSON(file = "json2")
json3 <- fromJSON(file = "json3")
jsonl <- list(json1, json2, json3)
jsonc <- toJSON(jsonc)
jsonc
[1] "[[[1,5],[5,7],[8,10]],[[5,6],[4,5],[5,8]],[[4,7],[3,4],[4,8]]]"
write(jsonc, file = "jsonc")

如果你有很多文件,你可以将它们放在一个向量中并使用lapply来保存一些输入:

files <- c("json1", "json2", "json3")
jsonl <- lapply(files, function(f) fromJSON(file = f))
jsonc <- toJSON(jsonl)
write(jsonc, file = "jsonc")