关于从R中的另一个矩阵获得一个矩阵的相应信息的快速问题

时间:2011-07-26 20:40:54

标签: r

我想从另一个矩阵M2获得Matrix1中矢量的相应名称。

例如,一个矩阵= M1只有名称,A,B,C,D ,,,等等100 * 1而其他矩阵= M2也有这些名称,但是随机使用这些名称,并且还有一个列,M2大小为100 * 2.

目前,我想获得第二列的相应信息与M1的名称相匹配。我的矩阵太大了,没有使用forloop,有什么方法可以快速得到它吗?

非常感谢,

1 个答案:

答案 0 :(得分:1)

猜测你想要这样的东西:

M1 <- matrix(LETTERS,ncol=1)
## use data.frame rather than matrix to preserve numeric values in column 2
M2 <- data.frame(sample(LETTERS),1:26)
M2[match(M1[,1],M2[,1]),]
如果您只想要数值,请

M2[match(M1[,1],M2[,1]),2]

如果将名称保留为行名称,则更容易:

M2 <- data.frame(1:26,row.names=sample(LETTERS))
M2[M1[,1],]