我想在 R 中将2个表合并在一起。 该表如下所示:-
table1
TID Date Time Item
T01 9/1/10 10:00pm Bag
T01 9/1/10 10:00pm Tea
T01 9/1/10 10:00pm Pen
T02 9/1/10 10:50pm Bread
T02 9/1/10 10:50pm Pencil
T03 9/1/10 11:00pm Sausage
T04 9/1/10 11:30pm Fishball
T04 9/1/10 11:30pm Tissue paper
T05 9/1/10 12:05am Battery
table2
PID Name
P001 Jason
P002 Mary
P003 Katie
P004 James
P005 Nelson
P006 Helmi
我希望我能得到这样的综合结果:-
TID Date Time Item PID Name
T01 9/1/10 10:00pm Bag P001 Jason
T01 9/1/10 10:00pm Tea P001 Jason
T01 9/1/10 10:00pm Pen P001 Jason
T02 9/1/10 10:50pm Bread P002 Mary
T02 9/1/10 10:50pm Pencil P002 Mary
T03 9/1/10 11:00pm Sausage P003 Katie
T04 9/1/10 11:30pm Fishball P004 James
T04 9/1/10 11:30pm Tissue paper P004 James
T05 9/1/10 12:05am Battery P005 Nelson
合并取决于table1,如果它具有相同的ID,则它将使用来自table2的具有相同PID的同一行。另外,我的table2可能没有足够的行用于与table1合并,因此在整个table2用完后,需要重复使用该行。 我已经尝试过了,但是结果失败了。
merge(table1,table2,by.x = table1 $ TID,by.y = table2 $ PID)
此错误消息“ fix.by(by.x,x)中的错误:'by'必须与列数匹配”
merge(data.frame(datafile,row.names = NULL),data.frame(salary,row.names = NULL),by = 0,all = TRUE)
提示没有此错误消息,但直到5分钟后似乎没有任何结果,并迫使我单击“停止”按钮
任何人都知道如何解决此问题?
答案 0 :(得分:0)
您的table1使用看起来像TID
的{{1}},而table2使用看起来像T0X
的{{1}}。一种方法是在一个表中创建一列以匹配另一个。
PID