r - 有没有一种简单的方法来翻转矩阵(水平或垂直)?
问题描述
在 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
解决方案
我认为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
推荐阅读
- javascript - 在 onFirstInteractive 范围内使用正确的变量
- reactjs - 数组中数组的绑定属性
- r - 数据框中的异常值,但我想对 R 中数据框中的分组行执行此操作
- r - 如何计算因子 cat 的每个类别的数据框数据中变量 x 和 y 之间的相关性?
- java - 如何以编程方式在 log4j2 中正确使用 RoutingAppender?
- reactjs - 为什么以及何时 Cordova 比 React Native 更好?
- ios - 如何在运行时检测应用程序使用 swift
- r - 是否有 R 命令来确定数据帧值是否可以转换为数字格式?
- javascript - 为什么记录到控制台的数据值有效,但分配给变量时无效?
- excel - 将值从工作表传递到模块