Using merge
merge(dt1,dt2,by='name', suffixes = c(".1",".2"))
name score.1 rank.1 score.2 rank.2
1 aba 9718 921 9023 1080
2 aca 11387 346 12276 156
If you have more than 2 elements:
ll <- list(dt1,dt2)
Merge <-
function(x,y)
merge(x,y,by='name', suffixes = c(".1",".2"))
Reduce(Merge,ll)
name score.1 rank.1 score.2 rank.2
1 aba 9718 921 9023 1080
2 aca 11387 346 12276 156