我在Stack上看到了不同的转换,但没有一个转化我需要的结果。我有一个数据框,我从Excel文件导入,操作,并希望导出为JSON文件。我试过这个:
exportJson <- toJSON(data)
print(exportJson)
write(exportJson, "test.json")
json_data <- fromJSON(file="test.json")
我的数据如下:
Jill Jimmie Alex Jane
Jill Jill 0 Jill Jill
Jimmie 0 Jimmie Jimmie 0
Alex 0 Alex Alex 0
Jane Jane Jane Jane 0
我的输出如下:
{
"Jill": ["Jill",
"0",
"0",
"Jane",
"0",
"0",
"0",
"0",
"0",
"0",
...
当我需要它看起来像这样的格式:
{
"nodes": [
{
"id": "id1",
"name": "Jill",
"val": 1
},
{
"id": "id2",
"name": "Jill",
"val": 10
},
(...)
],
"links": [
{
"source": "id1",
"target": "id2"
},
(...)
]
}
我已经看到了将JSON转换为数据框的方法,我知道RJSONIO
,jsonlite
,rjson
等等,我已经用Google搜索了它,也许我只是错过了一个明显的答案。
答案 0 :(得分:0)
'。' jq
中的命令将重新格式化JSON数据。使用jqr包:
library(jqr)
# Unformatted (no whitespace)
x <- '{"a":1,"b":2,"c":[1,2,3],"d":{"e":1,"f":2}}'
jq(x, '.')
输出重新格式化(使用空格)
{
"a": 1,
"b": 2,
"c": [
1,
2,
3
],
"d": {
"e": 1,
"f": 2
}
}
jq
也可作为独立实用程序使用:https://stedolan.github.io/jq/