R 程序将给定矩阵顺时针旋转 90 度


2022 年 4 月 1 日, Learn eTutorial
2099

如何将给定矩阵顺时针旋转 90 度

要编写一个 R 程序来旋转矩阵,我们使用 **matrix() 内置函数**。matrix() 函数是 R 中的一个内置函数,它将根据给定的一组值创建矩阵。该函数的语法是:

matrix(data = NA, nrow = 4, ncol = 6, dimnames = NULL)

  • NA:一个可选的数据向量。
  • nrow: 所需的行数
  • ncol: 所需的列数。
  • byrow: 如果此值为 false,则按行填充矩阵,否则按列填充矩阵。
  • dimnames:NULL 或一个长度为2的列表,分别给出行名和列名。

如何在 R 程序中实现矩阵旋转

在此 R 程序中,我们直接将值赋给内置函数以创建矩阵,然后使用 t(apply()) 来旋转它。最后,打印函数结果。

这里我们使用变量 **Matx** 来赋给一个值为 1 到 9 的矩阵。通过调用 **t(apply(Matx, 2, rev))** 来旋转矩阵。这里的 **apply()** 返回通过将函数应用于数组或矩阵获得的向量或数组。函数 **t()** 有助于获取给定数据框矩阵的转置。

算法

步骤 1:将变量 Matx 赋值为矩阵值

步骤 2:创建 1 到 9 个元素且有 3 行的矩阵

步骤 3:通过调用 **t(apply(Matx, 2, rev))** 来旋转它

步骤 4:将结果赋给变量 **final**

步骤 5:打印结果矩阵 **final**

 

R 源代码

                                          Matx=  matrix(1:9, 3)
print("Original matrix:")
print(Matx)
final = t(apply(Matx, 2, rev))
print("Rotate the matrix 90 degree clockwise:")
print(final)
                                      

输出

[1] "Original matrix:"
     [,1] [,2] [,3]
[1,]    1    4    7
[2,]    2    5    8
[3,]    3    6    9
[1] "Rotate the matrix 90 degree clockwise:"
     [,1] [,2] [,3]
[1,]    3    2    1
[2,]    6    5    4
[3,]    9    8    7