改变R中矩阵的索引

时间:2014-03-31 11:03:17

标签: r matrix indexing

有人可以告诉我,是否有办法改变矩阵的索引。因此,如果我正在运行循环,则应用新索引。在我的例子中,我将不得不改变索引,以便矩阵的索引不是1:5而是64:68。这可能吗。

提前致谢

a <- matrix(1:20, ncol=4)

a
     [,1] [,2] [,3] [,4]
[1,]    1    6   11   16
[2,]    2    7   12   17
[3,]    3    8   13   18
[4,]    4    9   14   19
[5,]    5   10   15   20

在这种情况下,矩阵索引应以数字64开头。

我的预期结果是:

     [,1] [,2] [,3] [,4]
[64,]    1    6   11   16
[65,]    2    7   12   17
[66,]    3    8   13   18
[67,]    4    9   14   19
[68,]    5   10   15   20

所以,如果我申请

a[64,]

我的结果将是

[64]  1  6 11 16

1 个答案:

答案 0 :(得分:2)

如果你真的需要这个(虽然我同意更详细地描述上下文以查看是否有其他方法可以做你想要的事情),你可以看看Oarray包裹:

library(Oarray)

请注意,您必须使用dim而不是ncolnrow

(a <- Oarray(1:20, dim=c(5,4),offset=c(64,1)))
##       [,1] [,2] [,3] [,4]
## [64,]    1    6   11   16
## [65,]    2    7   12   17
## [66,]    3    8   13   18
## [67,]    4    9   14   19
## [68,]    5   10   15   20

索引工作:

a[64,]
## [1]  1  6 11 16