【问题标题】:How to keep columns when converting list to data frame将列表转换为数据框时如何保留列
【发布时间】:2018-10-12 14:32:51
【问题描述】:

我正在尝试将列表转换为数据框,同时将变量名称以及最小值和最大值保留在 3 个单独的列中。我尝试过 as.data.frame() 并尝试取消列出该列表,但它只创建一列或返回变量类型。我在 R 中使用 nycflights2013 数据。我该如何做呢?

checker <- function(x){
if(is.numeric(x)){
  max.x <- max(x, na.rm = TRUE)
  min.x <- min(x, na.rm = TRUE)
  vectorlist <- list(max=max.x, min=min.x)
 return(vectorlist)
 }
else
  vectorlist <- list(max = "NA", min = "NA")
 return(vectorlist)
}
flightlist <- t(sapply(flights, checker))
flightlist
as.data.frame(flightlist)

【问题讨论】:

    标签: r list dataframe


    【解决方案1】:

    我认为这行得通,只需更改您拥有的行数:

    df &lt;- data.frame(matrix(unlist(flightlist), nrow=100, byrow=T))

    不确定它是否会保留列名,所以你可以这样做colnames(df)&lt;- &lt;cols from data&gt;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-25
      • 1970-01-01
      • 1970-01-01
      • 2019-11-16
      相关资源
      最近更新 更多