如果它们匹配,则组合两个文件中的列R.

时间:2014-09-19 11:14:02

标签: r pattern-matching

给定两个文件,其中file1中的ID可以在file2中找到,我想创建一个包含匹配ID的组合文件。

R中的合并功能只是解决方案吗?

File1中:

 ID                                    start end
 mmu-miR-101b-3p_GTACAGTACTGTGATAGCTGA 60   80
 mmu-miR-101b-3p_GTACAGTACTGTGATAGCTG  60   80
 mmu-miR-30a-3p_TTTCAGTCGGATGTTTGCAGC  48   68
 mmu-miR-30a-3p_CTTTCAGTCGGATGTTTGCAGC 47   68

文件2:

ID                                      FC
mmu-miR-101b-3p_GTACAGTACTGTGATAGCTGA   5.9491448553
mmu-miR-10a-5p_TACCCTGTAGATCCGAATTTGTGT 5.321215412
mmu-miR-322-5p_CAGCAGCAATTCATGTTTTGGA   5.233658301
mmu-miR-10b-5p_TACCCTGTAGAACCGAATTTGT   4.927861459

输出:

mmu-miR-101b-3p_GTACAGTACTGTGATAGCTGA   5.9491448553 mmu-miR-101b-3p_GTACAGTACTGTGATAGCTGA 60   80

1 个答案:

答案 0 :(得分:2)

如果您不想使用合并(这将起作用),只需:

x1 <- x1[x1$ID %in% intersect(x1$ID, x2$ID), ]
x2 <- x2[x2$ID %in% intersect(x1$ID, x2$ID), ]
x1 <- x1[order(x1$ID), ]
x2 <- x2[order(x1$ID), ]
x1 <- x1[! duplicated(x1$ID), ]
x2 <- x2[! duplicated(x2$ID), ]
merged <- cbind(x1, x2)

其中x1和x2是文件1和2的数据帧。

但是。 Srsly。只需阅读?合并页面&lt; 3