【问题标题】:export data.frame in R into plain JSON将 R 中的 data.frame 导出为纯 JSON
【发布时间】:2015-09-26 13:57:14
【问题描述】:

我想将 R 中的一个简单的 data.frame 导出到一个普通的 JSON 对象中,最好将多个变量附加到一个 data.js 文件中。

这是我的数据框:

df <- data.frame(Person=c("Dan", "Tom", "Max"), Apples=c(3,5,8), Pears=c(1,0,2), Bananas=c(30,1,4))
df

  Person Apples Pears Bananas
1    Dan      3     1      30
2    Tom      5     0       1
3    Max      8     2       4

这是我想要导出的格式。

var data1 = [
["Person", "Apples", "Pears", "Bananas"],
["Dan", 3, 1,30],
["Tom", 5, 0, 1],
["Max", 8, 2, 4],
]

谢谢!

【问题讨论】:

    标签: json r dataframe export jsonlite


    【解决方案1】:

    我很想问“你试过什么......?” ...

    这很诱人,但不起作用,因为toJSON 处理行, 不是列,作为列表:

    library(rjson)
    cat(toJSON(df))
    ## {"Person":["Dan","Tom","Max"],
    ##    "Apples":[3,5,8],"Pears":[1,0,2],"Bananas":[30,1,4]}
    

    apply(df,1,...) 会很好,但apply() 做了一堆 难以关闭的简化。

    tmp1 <- lapply(split(df,seq(nrow(df))),function(x) unname(as.list(x)))
    cat(toJSON(c(list(names(df)),tmp1)))
    ## {"":["Person","Apples","Pears","Bananas"],
    ##    "1":["Dan",3,1,30],"2":["Tom",5,0,1],"3":["Max",8,2,4]}
    

    这与您要求的格式不完全一致,但非常接近。

    【讨论】:

      猜你喜欢
      • 2017-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-26
      • 2015-10-13
      • 2017-08-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多