将一列中的变量更改为另一个变量

时间:2015-07-29 21:03:41

标签: r match

我的数据格式为

InputID   matchID1   matchID2   matchID3   matchID4
4:560812  6:80321    5:16412   13:349812  2:154123
12:45123  16:12341   4:54323   12:561342  3:146542
5:872341  7:890750   5:198273  1:15411    2:788972
8:4098223 1:89471    3:947123  12:407123  19:498723
9:1289037 11:1023948 7:64237   1:4239837  3:364123

我有另一个文件格式为:

InputID   rsID
4:560812  rs501239
12:45123  rs740123
9:1289037 rs834019
5:872341  rs903841
8:4098223 rs10983

输入RSID文件不一定与第一个文件的顺序相同。我想有一个输出文件,我用第一列的rsID替换输入ID。我想保持所有其他ID相同。某些输入ID可能是不同输入的matchID,但我不想替换它们。

InputID   matchID1   matchID2   matchID3   matchID4
rs501239  6:80321    5:16412   13:349812  2:154123
rs740123  16:12341   4:54323   12:561342  3:146542
rs903841  7:890750   5:198273  1:15411    2:788972
rs10983   1:89471    3:947123  12:407123  19:498723
rs834019  11:1023948 7:64237   1:4239837  3:364123  

我如何使用数据框在R中执行此操作?或者可能不在R?

1 个答案:

答案 0 :(得分:1)

您可以使用函数merge首先将第二个数据框连接到第一个数据框,然后点击:

DF <- merge(DF2,DF1,by="InputID")

然后将第一列(将是InputID)删除,如下所示:

DF <- DF[-1]

最后,调用新的第一列&#34; InputID&#34;

colnames(DF)[1] <- "InputID"

希望它有效!