我有两个数据帧
df1 # a b # 1 10 20 # 2 11 21 # 3 12 22 # 4 13 23 # 5 14 24 # 6 15 25 df2 # a b # 1 4 8
我想要以下输出:
df3 # a b # 1 14 28 # 2 15 29 # 3 16 30 # 4 17 31 # 5 18 32 # 6 19 33
即将df2添加到df1的每一行 .
有没有办法使用plyr(mdplyr ??)或dplyr获得所需的输出?
我认为没有理由为这样的事情“dplyr” . 在基地R你可以做:
df1 + unclass(df2) # a b # 1 14 28 # 2 15 29 # 3 16 30 # 4 17 31 # 5 18 32 # 6 19 33
与 df1 + list(4, 8) 相同 .
df1 + list(4, 8)
一个衬垫与dplyr .
mutate_each(df1, funs(.+ df2$.), a:b) # a b #1 14 28 #2 15 29 #3 16 30 #4 17 31 #5 18 32 #6 19 33
使用sweet函数的基础 R 解决方案 sweep :
R
sweep
sweep(df1, 2, unlist(df2), '+') # a b #1 14 28 #2 15 29 #3 16 30 #4 17 31 #5 18 32 #6 19 33
3 回答
我认为没有理由为这样的事情“dplyr” . 在基地R你可以做:
与
df1 + list(4, 8)
相同 .一个衬垫与dplyr .
使用sweet函数的基础
R
解决方案sweep
: