问题描述
关于rbind的一个问题。
运行 df_all <- rbind(df_1,df_2 ...)
组合多个数据框时,我想知道是否有可能在单独的列中添加一个列,其中包含每个观察值所源自的各个数据框的名称?
非常感谢, 梅尔文
解决方法
尝试这种方法:
library(dplyr)
new_df <- bind_rows(lst(df_1,df_2),.id = 'id')
类似地,如果有很多这样的数据帧,则不需要一一写入。使用paste0
创建一个字符串向量,然后使用mget
+ bind_rows
。
new_df <- bind_rows(mget(paste0('df_',1:2)),.id = 'id')
您可以将2更改为全局环境中任意数量的数据帧。