Skip to content
Prev 173023 / 398502 Next

Merge 10 data frames with 3 id columns that are common to all data frames

I tried using merge_all as shown below but I am getting an error ... can
anyone tell me what I am doing wrong?  The result table below is what I am
looking for.

DF1 <- data.frame(var1 = letters[1:5], x = rnorm(5), y =2)
DF2 <- data.frame(var1 = letters[1:5], t = rnorm(5), u =2)
DF3 <- data.frame(var1 = letters[1:5], d = rnorm(5), e =31)
DF4 <- data.frame(var1 = letters[1:5], f = rnorm(5), o =11)

DF_all <- merge_all(DF1, DF2, DF3, DF4, by="var1" )

Error in fix.by(by.x, x) : 
  'by' must specify column(s) as numbers, names or logical

Results I would like
var1	x		y	d		e	t		u	x		
a 	-1.725155	2	-0.48097	31	0.032968	2	-1.725155	
b	0.799983	2	2.32965		31	-0.385364	2	0.799983	
c 	-1.387224	2	0.61761		31	0.977404	2	-1.387224	
d	0.645946	2	0.46152		31	1.334591	2	0.645946	
e	0.058783	2	-0.25312	31	0.631676	2	0.058783
baptiste auguie-2 wrote: