打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
矩阵和数组 (3) | Matlab 教程

矩阵和数组(3)

  • 6.1矩阵

    • 6.1.11操作矩阵

    • 6.1.12矩阵的可视化

    • 6.1.13多维数组

6.1矩阵

6.1.11操作矩阵

下面是一些用于处理矩阵的函数:

  • diag提取或创建对角线。
  • fliplr从左到右翻转
  • flipud从上到下翻转
  • rot90旋转
  • tril提取下三角形部分
  1. diag函数可以用于提取或创建矩阵的对角线。具体来说,如果输入一个矩阵,diag函数会返回该矩阵的主对角线元素组成的向量。如果输入一个向量,diag函数会创建一个以该向量为主对角线元素的矩阵。例如,假设有一个3x3的矩阵A:

    A = [1 2 3;
         4 5 6;
         7 8 9];

    要提取A的主对角线元素,可以使用以下代码:

    d = diag(A);

    运行结果为:

    d =
      1
      5
      9

    要创建一个以向量v为主对角线元素的矩阵,可以使用以下代码:

    B = diag(v);

    例如,要创建一个3x3的矩阵,其主对角线元素为1、2、3,可以使用以下代码:

    v = [1 2 3];
    B = diag(v);

    运行结果为:

    B = [1 0 0;
         0 2 0;
         0 0 3]
  2. fliplr函数可以用于将矩阵从左到右翻转。具体来说,fliplr函数会将矩阵的每一行从左到右翻转。例如,假设有一个3x3的矩阵A:

    A = [1 2 3;
         4 5 6;
         7 8 9];

    要将A从左到右翻转,可以使用以下代码:

    B = fliplr(A);

    运行结果为:

    B = [3 2 1;
         6 5 4;
         9 8 7]
  3. flipud函数可以用于将矩阵从上到下翻转。具体来说,flipud函数会将矩阵的每一列从上到下翻转。例如,假设有一个3x3的矩阵A:

    A = [1 2 3;
         4 5 6;
         7 8 9];

    要将A从上到下翻转,可以使用以下代码:

    B = flipud(A);

    运行结果为:

    B = [7 8 9;
         4 5 6;
         1 2 3]
  4. rot90函数可以用于将矩阵旋转。具体来说,rot90函数可以将矩阵逆时针旋转90度、180度或270度。例如,假设有一个3x3的矩阵A:

    A = [1 2 3;
         4 5 6;
         7 8 9];

    要将A逆时针旋转90度,可以使用以下代码:

    B = rot90(A);

    运行结果为:

    B = [3 6 9;
         2 5 8;
         1 4 7]

    要将A逆时针旋转180度,可以使用以下代码:

    C = rot90(A, 2);

    运行结果为:

    C = [9 8 7;
         6 5 4;
         3 2 1]

    要将A逆时针旋转270度,可以使用以下代码:

    D = rot90(A, 3);

    运行结果为:

    D = [7 4 1;
         8 5 2;
         9 6 3]
  5. tril函数可以用于提取矩阵的下三角形部分。具体来说,tril函数会将矩阵的上三角形部分置为0,返回矩阵的下三角形部分。例如,假设有一个3x3的矩阵A:

    A = [1 2 3;
         4 5 6;
         7 8 9];

    要提取A的下三角形部分,可以使用以下代码:

    B = tril(A);

    运行结果为:

    B = [1 0 0;
         4 5 0;
         7 8 9]

    注意,tril函数默认提取矩阵的主对角线及以下部分。如果要提取矩阵的次对角线及以下部分,可以使用tril(A, -1)

    A =

      1     2     3
      4     5     6
      7     8     9

    >> tril(A, -1)

    ans =

      0     0     0
      4     0     0
      7     8     0

6.1.12矩阵的可视化

矩阵可以在MATLAB中可视化。这一主题在第9章作了简要讨论,并附有插图。

6.1.13多维数组

MATLAB数组可以有两个以上的维度。例如,假设你创建了一个矩阵a = [1:2; 3:4],可以向其中添加第三个维度a(:,:,2) = [5:6; 7:8]

>> a = [1:23:4]

a =

     1     2
     3     4

>> a(:,:,2) = [5:67:8]

a(:,:,1) =

     1     2
     3     4


a(:,:,2) =

     5     6
     7     8

首先创建了一个2x2的矩阵a,其中第一行为1和2,第二行为3和4。然后,它在第三维上添加了一个新的2x2的矩阵,其中第一行为5和6,第二行为7和8。最后,通过a(:,:,1)a(:,:,2)可以分别访问这两个矩阵。

我们可以把三维数组a想象成一系列的“页面”,每页上都有一个矩阵。a的第三个维度是页数。这类似于具有多个工作表的电子表格:每个工作表包含一个表格(矩阵)。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Matlab中的diag函数用法
MATLAB的矩阵运算与重构
Matlab学习:矩阵的一些特殊操作
4.7 矩阵运算函数
Mathlab矩阵运算
matlab基础
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服