R 根据组在数据帧之间复制和相乘值
我有一个数据帧DF1。id表示参与者的编号,然后每个参与者有几个观察行:R 根据组在数据帧之间复制和相乘值,r,dplyr,R,Dplyr,我有一个数据帧DF1。id表示参与者的编号,然后每个参与者有几个观察行: id blocktype condition blocknr markodd 1 1 1 1 0 1 3 2 2 0 1 3 3 2 0 2 1 2 1 0 2 1
id blocktype condition blocknr markodd
1 1 1 1 0
1 3 2 2 0
1 3 3 2 0
2 1 2 1 0
2 1 1 2 0
2 1 1 2 0
3 4 1 1 0
3 1 1 2 0
3 2 1 2 0
我还有另一个数据帧DF2,带有附加数据,这次每个人都有一行:
id taskorder exporder
1 1 1
2 2 1
3 1 2
我想从DF2中为每个id取一个值,并在各个id的所有观察值中复制和乘以它,所有这些都在DF1的一个新列中,这样我得到:
id blocktype condition blocknr markodd taskorder
1 1 1 1 0 1
1 3 2 2 0 1
1 3 3 2 0 1
2 1 2 1 0 2
2 1 1 2 0 2
2 1 1 2 0 2
3 4 1 1 0 1
3 1 1 2 0 1
3 2 1 2 0 1
你能告诉我怎么做吗?最好是dplyr解决方案 试试这个:
DF1 <- DF1 %>% left_join(DF2, by="id") %>% dplyr::select(colnames(DF1), taskorder)
合并和匹配将实现所需的功能TaskOrder在输出中获取值3,而不是在输入中