-2

我有两个表在 data.frame 结构中。表 1 包含一列 200 个基因 ID(字母和数字),表 2 包含 4,000 个基因 ID(按行)的列表以及 20 个附加列。我想将这两个表相交并生成一个新的表 3,其中包含 200 个基因 ID 以及 20 列中的相关信息。

表 3 <- 表 1%n%表 2

4

2 回答 2

2

你想要类似的东西

table3 <- merge(table1, table2, by.x="id", by.y="id", all.x=T, all.y=F)

您也可以使用以下方法进行子集化:

table3 <- table2[table2$id %in% table1$id,]

reprex 会使这篇文章更有可能得到很好的回应,但你应该能够找到一些东西来帮助你进行一些搜索。如果这些都不起作用,因为您遇到了以前没有人问过的独特问题,那么给予是一种代表,我们可以尝试为您提供替代解决方案。

编辑:对于更多的上下文,这是我上周回答的一个类似问题,这是一篇关于理解合并的好帖子。

于 2017-12-07T15:10:00.177 回答
1

我推荐这个dplyr包。它比merge我认为的更直观。

你可以输入:

table3 <- left_join(table1, table2, by = "unique_id")
于 2017-12-07T15:10:06.563 回答