如何在R中合并2个json对象?
我有2个json对象,希望在R中将它们合并成一个唯一的对象 以下是文件的内容: 目标1:如何在R中合并2个json对象?,r,json,R,Json,我有2个json对象,希望在R中将它们合并成一个唯一的对象 以下是文件的内容: 目标1: { "value": [ "1", "2", "3" ] } 目标2: { "value": [ "4", "5", "6" ] } 预期结果 { "value": [ "1", "2", "3", "4"
{
"value": [
"1",
"2",
"3"
]
}
目标2:
{
"value": [
"4",
"5",
"6"
]
}
预期结果
{
"value": [
"1",
"2",
"3",
"4",
"5",
"6"
]
}
我在其他语言中发现了类似的问题(例如),但我想在R中这样做(我使用jqr包)
你知道吗?
谢谢。为了展示@Gregor的建议,这里有一个例子
# Store JSON content as lists (lst1, lst2)
library(jsonlite);
lst1 <- fromJSON(txt =
'{
"value": [
"1",
"2",
"3"
]
}')
lst2 <- fromJSON(txt =
'{
"value": [
"4",
"5",
"6"
]
}')
# Merge lst1 and lst2 and output as JSON
toJSON(Map(c, lst1, lst2))
#{"value":["1","2","3","4","5","6"]}
#将JSON内容存储为列表(lst1、lst2)
图书馆(jsonlite);
lst1我也在思考jqr
,因此可能会有一个更好、更简洁的解决方案,而不需要在最后附加粘贴
jqr::jq(paste0(js1, js2), ".value[]") %>% ## extract the 'value's
combine() %>% ## combine to a single JSON
paste0('{"value":', .,"}") ## construct output
# [1] "{\"value\":[\"1\", \"2\", \"3\", \"4\", \"5\", \"6\"]}"
使用jsonlite::fromJSON
转换为数据帧,使用jsonlite::toJSON
组合、转换回JSON。