簡體   English   中英

將R數據幀寫入信息報可讀的JSON文件

[英]Writing an R dataframe into an infogram readable JSON file

我正在嘗試將數據框寫入Infogram可以識別的JSON格式,以實現實時更新的自動化。 我一直在使用R和jsonlite包。

例如:

df <- data.frame(X = c(1,2,3),
                 Y = c(5,7,8))
df

#  X Y
#1 1 5
#2 2 7
#3 3 8

我想出了:

require(jsonlite)

rbind(as.matrix(t(names(df))), 
      as.matrix(df)) %>% 
  toJSON(pretty = T) # or write_json(filename, pretty = T) to write straight to file

結果是:

[
  ["X", "Y"],
  ["1", "5"],
  ["2", "7"],
  ["3", "8"]
] 

所需的格式本質上是上述格式,但用一對額外的方括號括起來(請注意,第一個數組由列標題組成,然后每個后續數組都是一個觀察值)。

[[
  ["X", "Y"],
  ["1", "5"],
  ["2", "7"],
  ["3", "8"]
]]

有沒有簡單的方法可以做到這一點? 謝謝

require(jsonlite)

## The data.frame
df <- data.frame(X = c(1,2,3),
                 Y = c(5,7,8))

現在您可以將對象修改為列表,然后在json輸出中獲得相同的列表項:

mat <- list(rbind(as.matrix(t(names(df))), as.matrix(df)))

現在有了您想要的額外括號:

toJSON(mat, pretty = T)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM