如何通过一个公共列联接两个表并过滤另一个列以使其位于R中其他两个列的数据之间

问题描述

我有两个表1和2,我想通过一个公用列将这些表连接起来。此外,我希望对数据进行排序,以使第一个表的另一列位于第二个表的其他两列之间。

解决方法

由于您没有提供任何示例数据,因此很难正确回答,但是应该遵循以下内容:

library(dplyr)

left_join(table1,table2,by = c("commoncolumn") %>%
    select(col2,col1,col3) #reorders columns to order listed

left_join()将表2中的任何行连接到表1中的匹配行,但丢弃表2中没有匹配的任何行。根据您想要的行为,full_join()(保留两个表中的所有行)或inner_join()(仅保留两个表中的行)可能更适合您。