我有一个矩阵:
[,1] [,2] [,3] [,4] [,5]
[1,] 1 5 9 13 17
[2,] 2 6 10 14 18
[3,] 3 7 11 15 19
[4,] 4 8 12 16 20
我想翻转它,以便最后一列是第一列,第一列是最后一列。 我知道如何使用循环,但有没有其他更快的方法来做到这一点,例如有功能。
以下是创建矩阵的代码:
mat=matrix(c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20), ncol=5)
答案 0 :(得分:1)
我们可以使用从最后一列索引到第一列的反向排序来进行翻转
mat[,ncol(mat):1]
它可以包装成一个函数
revflip <- function(matr) {
matr[, ncol(matr):1, drop = FALSE]
}
revflip(mat)