【发布时间】:2020-11-15 06:21:03
【问题描述】:
我有一个数据框列表。我想在每个数据帧中找到唯一的行,然后将该唯一数据帧列表输出到 1 个新数据帧中。
以y <- list(mtcars[,c(2,4)], iris[,4:5])开头
我首先重命名每个数据框中的列
colnames <- c("colA", "colB")
y <- lapply(y, setNames, colnames)
要单独查找唯一行,我可以使用
y1 <- unique(y[[1]])
y2 <- unique(y[[2]])
当然,我的数据框列表要大得多,我想将其应用于大约 100 个数据框的整个列表。我怎样才能做到这一点?我试过lapply,但得到一个错误。
上面的虚拟数据抛出错误:
unique[[x]] 中的错误:“闭包”类型的对象不是 子集表
我的真实数据抛出错误:
mydf[[x]] 中的错误:无效的下标类型“列表”
我知道我的过程的最后一步是将所有内容放入一个大数据框中,是一个 rbind 调用(单独:rbind(y1,y2),但我也不确定如何在该列表上运行 rbind ~100 个数据框(现在只有非重复行)
【问题讨论】: