R jsonlite:以定义的结构导出数据框
R jsonlite: export dataframe in a defined structure
In Python (json.dump(data, file) 我将字典导出到一个 json 文件,当我打开文件时,它具有以下结构:
{"TA_ID": [1, 2], "feature": ["a", "b"]}
我将这个带有 jsonlite 的数据框导入 R。在一些输入之后我修改了数据框(例如附加数据)并用 jsonlite:
导出它
TA_ID = c(1, 2, 3)
feature = c("a", "b", "c")
test_data <- data.frame(TA_ID, feature)
write_json(test_data, "Export.json", pretty = FALSE, unbox = FALSE)
现在,当我查看 Export.json 文件时,我看到以下结构:
[{"TA_ID":"1","feature":"a"},{"TA_ID":"2","feature":"b"},{"TA_ID":"3","feature":"c"}]
如何获取文件中的原始结构?修改后应该如下所示:
{"TA_ID": [1, 2, 3], "feature": ["a", "b", "c"]}
我在write_json中尝试了"pretty"和"unbox",但无法达到预期的效果。非常感谢您。
您需要将其分配给 list
而不是 data.frame
。
test_data <- list(TA_ID = c(1, 2, 3),feature = c("a", "b", "c"))
test_data
$TA_ID
[1] 1 2 3
$feature
[1] "a" "b" "c"
write_json(test_data, "Export.json", pretty = FALSE, unbox = FALSE)
它给出了,
{"TA_ID":[1,2,3],"feature":["a","b","c"]}
In Python (json.dump(data, file) 我将字典导出到一个 json 文件,当我打开文件时,它具有以下结构:
{"TA_ID": [1, 2], "feature": ["a", "b"]}
我将这个带有 jsonlite 的数据框导入 R。在一些输入之后我修改了数据框(例如附加数据)并用 jsonlite:
导出它TA_ID = c(1, 2, 3)
feature = c("a", "b", "c")
test_data <- data.frame(TA_ID, feature)
write_json(test_data, "Export.json", pretty = FALSE, unbox = FALSE)
现在,当我查看 Export.json 文件时,我看到以下结构:
[{"TA_ID":"1","feature":"a"},{"TA_ID":"2","feature":"b"},{"TA_ID":"3","feature":"c"}]
如何获取文件中的原始结构?修改后应该如下所示:
{"TA_ID": [1, 2, 3], "feature": ["a", "b", "c"]}
我在write_json中尝试了"pretty"和"unbox",但无法达到预期的效果。非常感谢您。
您需要将其分配给 list
而不是 data.frame
。
test_data <- list(TA_ID = c(1, 2, 3),feature = c("a", "b", "c"))
test_data
$TA_ID
[1] 1 2 3
$feature
[1] "a" "b" "c"
write_json(test_data, "Export.json", pretty = FALSE, unbox = FALSE)
它给出了,
{"TA_ID":[1,2,3],"feature":["a","b","c"]}