在Matlab中,我知道有些函数可以翻转矩阵,例如左右翻转(水平)或上下翻转(垂直),但是我不知道R中是否有类似的函数。
例如,假设我们有一个矩阵m <- matrix(1:12,nrow = 3)
,我们想要
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
答案 0 :(得分:3)
我认为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
答案 1 :(得分:3)
我们可以将序列反转为列,行的索引以获取翻转的数据集
m[, ncol(m):1]
# [,1] [,2] [,3] [,4]
#[1,] 10 7 4 1
#[2,] 11 8 5 2
#[3,] 12 9 6 3
m[nrow(m):1, ]
# [,1] [,2] [,3] [,4]
#[1,] 3 6 9 12
#[2,] 2 5 8 11
#[3,] 1 4 7 10