I have a data frame df1 with three columns called x, y and z
df1
x y z
8 2 8
9 3 1
1 7 2
I also have a list that contains 30 data frames df2, df3, ... df31, that each have three columns a, b and c.
list1
df2 df3 ... df31
a b c a b c a b c
4 7 5 4 8 6 3 1 7
9 5 3 3 1 9 4 8 6
8 6 1 2 9 1 1 6 3
I want to merge column y of df1 with each data frame in the list as a new column. So the new list should look like this:
list2
df2 df3 ... df31
a b c y a b c y a b c y
4 7 5 2 4 8 6 2 3 1 7 2
9 5 3 3 3 1 9 3 4 8 6 3
8 6 1 7 2 9 1 7 1 6 3 7
I have been using the following code:
list2 <- mapply("cbind", list1, df1$y, SIMPLIFY = FALSE)
however this only seems to take the first value of y and puts it into the new column:
list2
df2 df3 ... df31
a b c y a b c y a b c y
4 7 5 2 4 8 6 2 3 1 7 2
9 5 3 2 3 1 9 2 4 8 6 2
8 6 1 2 2 9 1 2 1 6 3 2
This seems like an easy problem and I am just really stuck with it so I would appreciate any help. Thanks!
list(df1$y)
ordf1['y']
– akrun