【发布时间】:2017-01-15 17:28:50
【问题描述】:
我有两个数据框; mRNA (here) 和 RPPA(here)。 mRNA 数据框有 1,212 列,而RPPA 数据框有 937 列。 RPPA 数据框中的所有列名称也出现在 mRNA 数据框中(但顺序不同)。在列中,两个数据框的值不同。
我想创建一个new mRNA 数据框,它将包含与RPPA 数据框相同的列,并且不会 包含未出现在(“旧”)@ 中的列987654332@数据框。
一个例子:
mRNA <- data.frame(A=c(25,76,23,45), B=c(56,89,12,452), C=c(45,456,243,5), D=c(13,65,23,16), E=c(17:20), F=c(256,34,0,5))
RPPA <- data.frame(B=c(46,47,45,49), A=c(51,87,34,87), D=c(76,34,98,23))
预期的结果是:
> new.mRNA
B A D
56 25 13
89 76 65
12 23 23
452 45 16
我尝试将 RPPA 列名转换为向量,然后将其与命令 mRNA[col.names.vector] 一起使用,如 here 所述,但它不起作用。它给出了错误undefined columns selected。
有没有快速的方法(没有函数、循环等)?
【问题讨论】:
-
请检查您的列名中是否有前导/滞后空格
-
@akrun 抱歉,我对 r 真的很陌生。我该如何检查?
-
@deborah 很容易检查。
colnames(mRNA); colnames(RPPA) -
@akrun 我不认为我有空格,但我确实有很多点。列名示例:TCGA.3C.AALI.01A.21.A43F.20。有问题吗?
-
这可能是个问题。检查两个数据集列名称中的点是否相同