Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否有一个R函数来匹配矩阵?_R_Matrix_Match - Fatal编程技术网

是否有一个R函数来匹配矩阵?

是否有一个R函数来匹配矩阵?,r,matrix,match,R,Matrix,Match,我的数据是这样的 x <- matrix(c(1,2,3,2,5,6,3,6,9),nrow = 3) rownames(x) <- c('a','b','c') colnames(x) <- c('a','b','c') x您可以使用y矩阵作为索引,从x中子集值,并添加为新列 cbind(y, x[y]) # [,1] [,2] [,3] #[1,] "a" "a" "1" #[2,] "b

我的数据是这样的

x <- matrix(c(1,2,3,2,5,6,3,6,9),nrow = 3)
rownames(x) <- c('a','b','c')
colnames(x) <- c('a','b','c')

x您可以使用
y
矩阵作为索引,从
x
中子集值,并添加为新列

cbind(y, x[y])

#    [,1] [,2] [,3]
#[1,] "a"  "a"  "1" 
#[2,] "b"  "a"  "2" 
#[3,] "a"  "c"  "3" 

非常感谢,这个方法在百万obs中也很有效。而且,我想知道x[y]是如何工作的?如果x有3列,但我只需要2列进行匹配。我应该怎么做?@Ronak Shah
x
是我们获取数据的矩阵。因此,
x
可以是任何列,只要这些列和行名出现在
y
中,就不重要了。
cbind(y, x[y])

#    [,1] [,2] [,3]
#[1,] "a"  "a"  "1" 
#[2,] "b"  "a"  "2" 
#[3,] "a"  "c"  "3"