我有一个问题一直没有找到有效的答案:我有多个数据框(确切地说是35个),我想要在每个数据框中添加包含人口统计信息的另一个数据框。
为了简单起见,这里有一个例子:
df1 <- data.frame(ID = c(1:3), b = c('x', 'y', 'z'), c = c('gh', 'fg', 'xv'), df = c('z', 'x', 'y'))
df2 <- data.frame(ID = c(1:3), v = c('a', 'mm', 'xc'), hg = c('yty', 'zc', 'cx'), fd = c('z', 'x', 'y'))
df3 <- data.frame(ID = c(1:3, t = c('ae', 'yw', 'zs'), j = c('ewr', 'zd', 'x'), sd = c('z', 'x', 'y'))
df4 <- data.frame(ID = c(1:3), u = c('df', 'y', 'z'), k = c('df', 'zs', 'xf'), f = c('z', 'x', 'y'))
.
.
.
df(n) <- ...
demo <- data.frame(sex = c('m', 'm', 'f'), age = c('30', '50', '62'), vital_sts = c('a', 'a', 'd'))
我想做的是将demo
数据框粘贴到其他每个数据框中。 我尝试过以下方法:
dfList <- list(df1, df2,df3,df4...)
for (i in 1:length(dfList) {
i <- merge(demo,i)
}
然而,当我检查数据框时,它们并没有合并。非常感谢您的任何帮助。
cbind
人口统计信息。 - Parfaiti
作为索引来访问dfList
而不是作为对象本身。因此,在循环内部应该这样写:dfList[[i]] <- merge(demo, dfList[[i]])
。 - Dan Adamsmerge
,您需要一些共同的列,因此您应该将ID
列添加到demo
中。 - Dan Adams