我有三个独立data.frames
的。这三个data.frames
具有相同的列数和相同的行数。此外,它们具有相同的列名。我正在尝试根据列名合并三个 data.frames。我正在使用以下代码来合并两个 data.frames 并返回匹配的数量。
Merged_DF = sapply(names(DF1),function(n) nrow(merge(DF1, DF2, by=n)))
问题是,虽然在这个例子中有两个 data.frames,但在我的例子中,我有 3 个 data.frames。如何修改代码以合并三个 data.frame 而不是两个?我试图以这种方式修改字符串,只需添加第三个 data.frame 但它不起作用:
Merged_DF = sapply(names(DF1),function(n) nrow(merge(DF1, DF2, DF3, by=n)))
它返回以下错误:
Error in fix.by(by.x, x) : 'by' must specify column(s) as numbers, names or logical
前任:
DF1
G1 G2 G3 a b f b c a c d b
DF2
G1 G2 G3 A b f b c a h M b
DF3
G1 G2 G3 a b f b l a j M v
data.frames 有大约 250 行和 50 列。