如何在 R 矩阵中找到向量值的行和列位置?


要找到 R 矩阵中向量值的行和列位置,我们可以按照以下步骤操作:

  • 首先,创建一个矩阵。
  • 然后,使用哪个函数找到特定值的行和列位置,并使用 as.vector 函数读取输出。

示例 1

创建矩阵

让我们创建一个如下所示的矩阵:

 实时演示

M1<-matrix(round(rnorm(60),2),ncol=3)
M1

执行后,上述脚本生成以下输出(由于随机化,此输出在您的系统上可能会有所不同):

      [,1]   [,2] [,3]
[1,]  -0.86 -0.49 0.19
[2,]  -2.42 -2.09 0.06
[3,]  -2.87  0.61 0.74
[4,]  -1.89 0.37 0.86
[5,]  -1.05 -1.22 -0.29
[6,]   0.45 -0.42 -1.31
[7,]   1.73 1.00 -0.37
[8,]   1.61 0.02 0.81
[9,]   1.98 -0.24 -0.20
[10,] -1.55 0.56 0.14
[11,]  1.07 0.07 0.47
[12,]  0.28 0.49 -1.45
[13,]  1.29 -1.46 0.24
[14,] -1.04 -0.70 -1.51
[15,] -1.86 0.04 -0.79
[16,]  0.10 -0.74 0.47
[17,] -0.33 -0.05 -0.66
[18,]  1.74 1.31 0.90
[19,]  0.95 -0.21 0.69
[20,]  0.04 -0.62 -0.02

查找值的行和列位置

使用 which 函数查找值为 0.19 的行和列位置:

 实时演示

M1<-matrix(round(rnorm(60),2),ncol=3)
as.vector( which(M1==0.19,arr.ind=TRUE))

输出

[1] 1 3

Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.

示例 2

创建矩阵

让我们创建一个如下所示的矩阵:

 实时演示

M2<-matrix(round(runif(60,2,5),2),ncol=3)
M2
     [,1] [,2] [,3]
[1,] 4.27 4.03 3.52
[2,] 4.57 2.52 2.08
[3,] 3.25 3.98 4.40
[4,] 2.77 3.50 3.94
[5,] 4.53 4.64 4.39
[6,] 3.44 3.83 3.26
[7,] 3.77 2.02 3.56
[8,] 2.12 3.54 3.74
[9,] 3.73 2.19 2.22
[10,] 4.54 3.16 4.11
[11,] 3.51 2.05 3.85
[12,] 4.88 3.93 2.74
[13,] 3.38 2.82 4.77
[14,] 3.63 3.76 2.84
[15,] 3.84 3.81 4.57
[16,] 3.18 2.76 4.44
[17,] 4.19 4.73 4.20
[18,] 3.55 4.99 2.56
[19,] 4.79 3.14 2.30
[20,] 4.96 2.99 3.54

查找值的行和列位置

使用 which 函数查找值为 2.05 的行和列位置:

 实时演示

M2<-matrix(round(runif(60,2,5),2),ncol=3)
as.vector(which(M2==2.05,arr.ind=TRUE))

输出

[1] 11 2

更新于: 2021年8月14日

668 次查看

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告