Перелистывание столбцов матрицы - PullRequest
0 голосов
/ 01 июня 2018

У меня есть матрица:

     [,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)

1 Ответ

0 голосов
/ 01 июня 2018

Мы можем использовать обратное упорядочение от индекса последнего столбца к первому, чтобы выполнить переворачивание

mat[,ncol(mat):1]

Может быть заключено в функцию

revflip <- function(matr) {
          matr[, ncol(matr):1, drop = FALSE]
  }

revflip(mat)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...