繁体   English   中英

将大量列表转换为数据框中的变量

[英]Convert large number of lists into variables in a data frame

我有几百个长度约为4000的列表,我想将它们合并到一个数据帧中,每个列表都成为数据帧中的变量。 如何在将列表名称保留为新数据框中的变量名称的同时执行此操作?

这是到目前为止我对前3个列表(formtype,cl和date)的了解

datalist = list()

datalist[[1]] <- formtype
datalist[[2]] <- cl
datalist[[3]] <- date


data.out = as.data.frame(do.call(cbind,datalist))

但是,这不会将列表名称(formtype,cl,date等)保留为data.out中的变量名称。

假设formtypecldate是普通向量(不是列表),并且它们在全局环境中,即在工作空间中,则:

formtype <- cl <- date <- 1:3  # test data
Names <- c("formtype", "cl", "date")
as.data.frame(mget(Names, .GlobalEnv))

给予:

  formtype cl date
1        1  1    1
2        2  2    2
3        3  3    3

如果formtypecldate确实是如下所示的列表,则unlist列出每个列表:

formtype <- cl <- data <- as.list(1:3) # test data
Names <- c("formtype", "cl", "date")
as.data.frame(lapply(mget(Names, .GlobalEnv), unlist))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM