将列表转换为数据框时如何保留列

时间:2018-10-12 14:32:51

标签: r list dataframe

我试图将列表转换为数据框,同时将变量名以及最小值和最大值保留在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)

1 个答案:

答案 0 :(得分:0)

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

dig

不确定会保留姓氏,所以您可以df <- data.frame(matrix(unlist(flightlist), nrow=100, byrow=T))