【发布时间】:2021-08-01 00:15:48
【问题描述】:
我有一系列列表 (list1,list2,list3,...,listn) 具有相似的结构和不同的信息。
我想要做的是将这些列表放入数据框形式,并在 for 循环中删除我不需要的变量。
最后,我想要 (df1,...,dfn),从列表中派生。
我试过了:
for (list in c("list1","list2"...,"listn")){
for (i in (1:n)){
assign(paste0("DF", i)) <- plyr::ldply(list)
DFi = DFi[,c("tokeep1",..."tokeepn")]
}
}
我猜这段代码不太正确,实际上它不起作用。
我总是卡在类似的问题上(在 for 循环中创建一系列不同的 df)并且还没有找到解决方案,所以尽管询问可能会有所帮助。
谢谢, 咻
【问题讨论】:
-
这里的
assign位在概念上和实践中基本上都不能以这种方式工作。 不要创建多个附加数字的变量。相反,请使用列表。 IE。有DF = list()并在循环内分配给DF[[i]]。更好的是,将这些数据框合并到一个大表中。尝试在循环中创建变量是一个令人惊讶的常见错误。但它从来都不是正确的方法。