0

我有一个矩阵m,其中包含向量 a 和 b。

m<-matrix(a,b,nrow=1000,ncol=2)

我将如何提取矩阵中条件的行a>b,反之亦然,然后将它们保存到一个新的向量中?

4

1 回答 1

1

我不清楚您所说的“......然后将它们保存到新向量中”是什么意思。

但是,为了提取相关行,您可以基于此对每列和子集中的值进行基本比较。

这是一些示例数据。(5行应该足以证明,)

set.seed(1)
x <- matrix(rnorm(10), nrow = 5, dimnames=list(NULL, c("a", "b")))
x
#               a          b
# [1,] -0.6264538 -0.8204684
# [2,]  0.1836433  0.4874291
# [3,] -0.8356286  0.7383247
# [4,]  1.5952808  0.5757814
# [5,]  0.3295078 -0.3053884

比较矩阵“x”中的“a”和“b”并提取相关行。

x[x[, "a"] > x[, "b"], ]
#               a          b
# [1,] -0.6264538 -0.8204684
# [2,]  1.5952808  0.5757814
# [3,]  0.3295078 -0.3053884

对“a < b”做同样的事情。

于 2013-09-26T16:12:04.873 回答