我在全局环境中有48个数据帧,我希望将它们相应地合并到(每个)的第1列。所有数据框只有1列,并且具有以下样式:
df1 <- data.frame("Genes" = c("EGF", "FGF", "IGF"))
df2 <- data.frame("Genes" = c("Myo6", "NRP2", "P23"))
我曾尝试将它们转换为列表,但是我想合并的是每个列表的2级,因此变得很复杂。
预期的最终结果:
df3 <- data.frame("Genes" = c("EGF", "FGF", "IGF", "Myo6", "NRP2", "P23"))
[如果有人可以帮助,那就太好了谢谢
这里是mget
的一个选项,用于将名称以'ZEB'开头且后跟数字的所有对象加载到list
,unlist
list
中并创建data.frame
out <- data.frame(Genes = unlist(unname(mget(ls(pattern = '^ZEB[1-2]')))))
如果名称不同,那么我们可以检查全局env中加载的所有data.frame对象
i1 <- eapply(.GlobalEnv,is.data.frame)
lst1 <- mget(names(i1)[i1])
out <- data.frame(Genes = unlist(uname(lst1)))