我有两个CSV,其中包含两个实验会话的数据。第一个CSV包含参与者ID号和实验条件。第二个CSV仅包含ID号。并非所有参与者都出现在第二个会话中,因此第二个CSV更小。每个CSV都有唯一的列,其中包含参与者'响应。
所以第一组就像是
X = data.frame(ID = 1:20, Condition = rep(c('a','b','c','d','e'), length.out=20), Response1 = rep('xyz', length.out=20), Response2 = rep('abc', length.out=20))
第二个
Y = data.frame(ID = 1:14, delayed.response = rep('def', length.out=14))
我想在Y中创建一个列,用于匹配具有正确条件的ID的条件。我尝试了各种策略(match(),grep(),Y ['条件'] = X $条件[X $ ID == Y $ ID],Y ['条件& #39;] = X $条件[%X $ ID中的Y $ ID%]等,但它们要么失败,要么匹配ID错误的ID。实现这一目标的最佳方法是什么?