【问题标题】:Parse the JSON into a data frame [closed]将 JSON 解析为数据框 [关闭]
【发布时间】:2018-10-11 09:09:25
【问题描述】:

将以下 JSON 解析为数据框。

js<-'{"name": null, "release_date_local": null, "title": "3 (2011)",
"opening_weekend_take": 1234, "year": 2011,
"release_date_wide": "2011-09-16", "gross": 59954}'

【问题讨论】:

  • 请同时展示您尝试过的内容以及最终结果应该是什么样子。

标签: r json dataframe


【解决方案1】:

一个选项:

library(rjson)
data.frame(t(unlist(fromJSON(js))))
   title opening_weekend_take year release_date_wide gross
3 (2011)                 1234 2011        2011-09-16 59954

【讨论】:

    【解决方案2】:
    require(RJSONIO)
    js<-'[{"name": null, "release_date_local": null, "title": "3 (2011)",
    "opening_weekend_take": 1234, "year": 2011,
    "release_date_wide": "2011-09-16", "gross": 59954}]'
    
    js <- fromJSON(js)
    

    也用 NA 替换空值

    js <- lapply(js, function(x) {
      x[sapply(x, is.null)] <- NA
      unlist(x)
    })
    

    然后最后使用do.call方法

    asDataFrame <- do.call("rbind", lapply(js, as.data.frame))
    

        do.call("rbind", js)
    

    输出:

    name release_date_local title      opening_weekend_take year  
    [1,] NA   NA            "3 (2011)" "1234"               "2011"
         release_date_wide gross  
    [1,] "2011-09-16"      "59954"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-01-24
      • 1970-01-01
      • 1970-01-01
      • 2017-11-06
      • 2020-12-28
      • 1970-01-01
      • 2015-08-19
      相关资源
      最近更新 更多