首页 > 解决方案 > 有没有一种简单的方法来翻转矩阵(水平或垂直)?

问题描述

在 Matlab 中,我知道有一些函数可以翻转矩阵,比如左右翻转(水平)或上下翻转(垂直),但我不知道 R 中是否有类似的函数。

例如,假设我们有一个矩阵m <- matrix(1:12,nrow = 3),我们想要

     [,1] [,2] [,3] [,4]
[1,]   10    7    4    1
[2,]   11    8    5    2
[3,]   12    9    6    3
     [,1] [,2] [,3] [,4]
[1,]    3    6    9   12
[2,]    2    5    8   11
[3,]    1    4    7   10

标签: rmatrix

解决方案


我认为pracma包可以帮助你

mh <- pracma::fliplr(m)

mv <- pracma::flipud(m)

这样

> mh
     [,1] [,2] [,3] [,4]
[1,]   10    7    4    1
[2,]   11    8    5    2
[3,]   12    9    6    3

> mv
     [,1] [,2] [,3] [,4]
[1,]    3    6    9   12
[2,]    2    5    8   11
[3,]    1    4    7   10

推荐阅读