r语言 - 将JSON对象保存到file.JSON



我已经创建了一个JSON文件,我需要能够通过电子邮件与其他合作者共享文件。然而,尽管有很多关于在R工作区中处理JSON对象的主题,但实际上没有资源讨论如何实际将JSON对象导出到.JSON文件。

下面是一个简单的例子:

list1 <- vector(mode="list", length=2)
  list1[[1]] <- c("a", "b", "c")
  list1[[2]] <- c(1, 2, 3)
exportJson <- toJSON(list1)
## Save the JSON to file
save(exportJson, file="export.JSON")
## Attempt to read in the JSON
library("rjson")
json_data <- fromJSON(file="export.JSON")

最后一行,试图读取JSON文件,导致错误:" error in fromJSON(file = "export.JSON"): unexpected character 'R'"

显然save()函数不是要走的路,但经过广泛的谷歌搜索,我没有发现任何说明如何将JSON导出到文件。

您可以使用write:

library(RJSONIO)
list1 <- vector(mode="list", length=2)
list1[[1]] <- c("a", "b", "c")
list1[[2]] <- c(1, 2, 3)
exportJson <- toJSON(list1)
> exportJson
[1] "[n [ "a", "b", "c" ],n[      1,      2,      3 ] n]"
write(exportJson, "test.json")
library("rjson")
json_data <- fromJSON(file="test.json")
> json_data
[[1]]
[1] "a" "b" "c"
[[2]]
[1] 1 2 3

还有jsonlite包:

library(jsonlite)
exportJSON <- toJSON(list1)
write(exportJSON, "test.json")
list2 <- fromJSON("test.json")
identical(list1, list2)

Voici uncode qui function correction by R STUDIO en Mai 2023

     #Code to export a data frame to JSON and then reimport it with R STUDIO (May 2023)"
     #Code pour exporter un data frame en JSON et puis le reimporter avec R studio
    #Building datra frame
    #construction du data frame    
    install.packages("RJSONIO")
    library(RJSONIO)
    DF_json <- donnees <- data.frame(nom = c("Alice", "Bob"), age = c(30, 25))
    DF_json
    #transform data frame in JSON file
    #transformation du data frame en fichier JSON
    exportJson <- toJSON(DF_json)
    exportJson
    #Export of data frame in json file
    #Export du data frame en fichier json
    write(exportJson, "C:/Users/u99amo/Downloads/test.json")

    #Import of data frame exported
    #import du data frame exporté
    install.packages("rjson")
    library(rjson)
    json_data <- fromJSON(file="C:/Users/u99amo/Downloads/test.json")
    json_data <- data.frame(json_data)
    #controle
    #contrôle 
    identical(DF_json, json_data)


最新更新