如何在 R 中根据其索引位置扩展矩阵行?
要在 R 中根据其索引位置扩展矩阵行,我们可以按照以下步骤操作 -
- 首先,创建一个矩阵。
- 然后,使用 rep 和 seq_len 函数以及 nrow,根据其索引位置扩展矩阵行。
创建矩阵
让我们创建一个如下所示的矩阵 -
M<-matrix(rnorm(18),nrow=6) M
在执行时,上述脚本会生成以下输出(此输出会因系统中的随机化而有所不同) -
[,1] [,2] [,3] [1,] 1.1504336 -2.7945635 -1.1192209 [2,] 1.8228588 0.5034033 -0.9991265 [3,] 0.7930331 -0.1489556 -0.3942745 [4,] 0.3773271 1.4935511 0.4641247 [5,] 1.2586923 -0.2941518 -0.7457999 [6,] 0.6746511 1.7114469 1.1954979
扩展矩阵
使用 rep 和 seq_len 函数以及 nrow,根据其索引位置扩展 M 中的行 -
M<-matrix(rnorm(18),nrow=6) M<-M[rep(seq_len(nrow(M)),1:6),] M
输出
[,1] [,2] [,3] [1,] 1.1504336 -2.7945635 -1.1192209 [2,] 1.8228588 0.5034033 -0.9991265 [3,] 1.8228588 0.5034033 -0.9991265 [4,] 0.7930331 -0.1489556 -0.3942745 [5,] 0.7930331 -0.1489556 -0.3942745 [6,] 0.7930331 -0.1489556 -0.3942745 [7,] 0.3773271 1.4935511 0.4641247 [8,] 0.3773271 1.4935511 0.4641247 [9,] 0.3773271 1.4935511 0.4641247 [10,] 0.3773271 1.4935511 0.4641247 [11,] 1.2586923 -0.2941518 -0.7457999 [12,] 1.2586923 -0.2941518 -0.7457999 [13,] 1.2586923 -0.2941518 -0.7457999 [14,] 1.2586923 -0.2941518 -0.7457999 [15,] 1.2586923 -0.2941518 -0.7457999 [16,] 0.6746511 1.7114469 1.1954979 [17,] 0.6746511 1.7114469 1.1954979 [18,] 0.6746511 1.7114469 1.1954979 [19,] 0.6746511 1.7114469 1.1954979 [20,] 0.6746511 1.7114469 1.1954979 [21,] 0.6746511 1.7114469 1.1954979
广告