【发布时间】:2015-08-19 13:52:34
【问题描述】:
我有两个数据框,其中一个具有我的数据的统计输出,我正在使用的基因在此数据框中由集群 ID 引用。我拥有的另一个数据框具有集群 ID 和随附的基因 ID。
data.frame1 是带有相关统计数据的无序集群的集合
X baseMean
cluster_1234 542
cluster_2546 764
cluster_3472 564
data.frame2 由簇按升序排列,但关联的gene_id 是随机顺序的,但允许我与另一个数据框中的其他关联数据进行比较。
gene_id cluster_id
gene_69149 cluster_1
gene_23478 cluster_2
gene_92371 cluster_3
我想要做的是通过迭代 data.frame1$x 为我的每个集群添加一个具有相关基因 ID 的列。输出将是一个新的数据框,其中包含感兴趣的基因和基因 ID。我还应该指出,data.frame1 中只有 900 行,但 data.frame2 中有 53,000 行。这类似于下面的内容。另一个问题是与每个gene_id 相关联的数字与与每个集群编号相关联的数字不相似。
gene_id X baseMean
gene_5463 cluster_1234 542
gene_7934 cluster_2546 764
gene_8346 cluster_3472 564
我只想在重要的集群 ID 旁边的新列中添加相关的基因 ID。
【问题讨论】:
-
在您给出的示例中,没有任何行匹配。我想你可以试试
?match。基于输入数据的预期输出会很有帮助。 -
输入示例和输出不同。请考虑提供重现输出的示例。
-
输出不同,因为我想在data.frame2中用适当的gene_id标记cluster_id
-
我明白这一点。您可以使用
merge或match来执行此操作。即merge(df1, df2, by.x='cluster_id', by.y='X') -
非常感谢您发表此评论,我会投赞成票
标签: r