【问题标题】:Parsing data frame to JSON (via RJSONIO)将数据帧解析为 JSON(通过 RJSONIO)
【发布时间】:2013-02-27 15:38:07
【问题描述】:

我对 RJSONIO 有疑问。 我有一个像df这样的数据框

df <- data.frame(a = c(1:3), b = c(4:6), c = c(7:9) )
df
  a b c
1 1 4 7
2 2 5 8
3 3 6 9

现在我需要使用这个数据框并生成以下 JSON 结构中的行。所以最终它看​​起来像这样:

{
"job_id": "1",
"page": "1",
"rows": [
    {
        "row": [
            "1",
            "4",
            "7"
        ]
    },
    {
        "row": [
            "2",
            "5",
            "8"
        ]
    },
    {
        "row": [
            "3",
            "6",
            "9"
        ]
    }
]

}

我从这段代码开始,但数组内的引号有问题(大括号括起来):

rows <- apply(df, 1, function(x) toJSON(list(row = x)) )
toJSON(list("job_id" = "1",  "page" = "1", "rows" = paste(rows) ) )

感谢您的建议!

【问题讨论】:

  • 欢迎来到 StackOverflow!你能展示你尝试过的代码吗?它可以帮助回答者提供解决方案。

标签: r rjsonio


【解决方案1】:

这里是如何创建 JSON 格式的。

list(job_id = "1", 
   page = "1", 
   rows = lapply(seq(nrow(df)), function(x) list(row=as.character(df[x,]))))


cat(toJSON(ll))
{"job_id": "1",
 "page": "1",
 "rows": [
  {
   "row": [ "1", "4", "7" ] 
  },
  {
   "row": [ "2", "5", "8" ] 
  },
  {
   "row": [ "3", "6", "9" ] 
  } 
 ] 
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-11
    • 2020-03-24
    • 2018-06-20
    • 1970-01-01
    • 2017-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多