【问题标题】:Change the results of a list into a dataframe将列表的结果更改为数据框
【发布时间】:2023-02-23 02:57:20
【问题描述】:

从这个过程:

library(jsonlite)
library(httpuv)
library(httr)

i<-1
results3 <- list();
for (a in 1:2) {
    getURL = paste0("https://api.github.com/search/commits?q=sentimentcommitter-date:2000-01-01..2023-01-20&sort=committer-date&order=asc&per_page=100&page=",a)
    req <- GET(getURL)
    data <- content(req)
    results3[[i]] <- data$items
    i <- i + 1
    print(i)
}

如何将列表 results3 的结果转换为 200 行和 117 列的数据框,就像这里的df &lt;- jsonlite::fromJSON(results_json, simplifyDataFrame = TRUE, flatten = TRUE)length(df$items[[1]])

【问题讨论】:

  • 还有什么我应该澄清的吗?

标签: r


【解决方案1】:

也许有点奇怪。但是首先制作一个 json 然后将其展平然后将它们绑定到 DF 会带来所需的结果。

js <- jsonlite::toJSON(results3)
df <- jsonlite::fromJSON(js, simplifyDataFrame = TRUE, flatten = TRUE)

ddf <- rbind(df[[1]], df[[2]])

class(ddf)
# [1] "data.frame"
dim(ddf)
# [1] 200 117

【讨论】:

  • 谢谢,如果有更多选项而不是只有2个,是否可以进行此修改?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-31
相关资源
最近更新 更多