MATLAB中矩阵和数组的区别

文章目录


前言

在 MATLAB 中,矩阵(Matrix) 和 数组(Array) 的概念既有联系又有区别,主要体现在以下几个方面。


环境配置

MATLAB下载安装教程:https://blog.csdn.net/2501_91538706/article/details/147232213

1. 数据结构本质

  • 矩阵(Matrix)
    是二维的数组,即行数和列数明确的二维结构。
    严格遵循线性代数的规则,例如矩阵乘法要求左矩阵的列数等于右矩阵的行数。
  • 数组(Array)
    是更通用的数据结构,可以是任意维度(一维、二维、三维...)。
    二维数组可以看作矩阵的扩展,而高维数组(如三维数组)则无法用矩阵直接表示。

2. 运算规则

(1)基本运算

  • 矩阵运算:遵循线性代数规则,使用标准运算符(如 *、/、^)。

A = 1 2; 3 4;

B = 5 6; 7 8;

C = A * B; % 矩阵乘法:19 22; 43 50

  • 数组运算:按元素执行操作,使用点运算符(如 .*、./、.^)。

A = 1 2; 3 4;

B = 5 6; 7 8;

C = A .* B; % 元素-wise乘法:5 12; 21 32

(2)特殊运算

  • 矩阵转置:使用单引号 '。

A = 1 2; 3 4;

A' % 结果:1 3; 2 4

  • 数组转置:对于复数数组,需用 .'' 避免共轭。

A = 1+1i, 2+2i;

A.' % 非共轭转置:1+1i; 2+2i

3. 函数与操作

  • 矩阵专用函数:
    inv(A):矩阵求逆
    det(A):行列式计算
    eig(A):特征值与特征向量
  • 数组通用函数:
    size(A):返回各维度大小(如 2 3 表示 2 行 3 列)
    reshape(A, m, n):重构数组维度
    cat(dim, A, B):沿指定维度拼接

4. 高维支持

  • 矩阵:仅支持二维(行 × 列)。
  • 数组:支持任意维度(如三维数组 A(2,3,4) 表示 2×3×4 的立方体结构)。
    示例:创建三维数组

A = rand(2, 3, 4); % 创建2×3×4的随机数组

5. 创建方式

  • 矩阵创建:

A = 1 2; 3 4; % 直接创建二维矩阵

  • 数组创建:

A = 1 2 3; % 一维数组(行向量)

B = rand(2,3,4); % 三维数组

  • 优先使用数组:MATLAB 中数组是更通用的数据结构,支持向量化运算,代码更简洁高效。
  • 仅在必要时用矩阵:当明确需要线性代数运算(如矩阵求逆、特征值计算)时使用矩阵。
相关推荐
richard_first21 小时前
Transformer与大语言模型:第13章 Decoder
人工智能·机器学习
AI_yangxi1 天前
短视频矩阵系统选哪家
大数据·人工智能·矩阵
罗西的思考1 天前
【Agentic RL / 强化学习框架】Molt 设计解读
人工智能·算法·机器学习
147API1 天前
评测分数不理想,什么时候值得补蒸馏数据
人工智能·深度学习·机器学习
张人玉2 天前
基于 Python 机器学习 与 PyQt5 桌面框架开发的可视化分析系统——基于大数据的网上购物消费行为分析可视化大屏
python·qt·机器学习·echarts·three.js
JoannaJuanCV2 天前
VLM学习-SFT(监督微调)
深度学习·学习·机器学习·大模型·视觉大模型·vlm·视觉编码器
音视频牛哥2 天前
拆解人形机器人:从关节、灵巧手到VLA与媒体神经系统
机器学习·计算机视觉·机器人
xiaokcehui2 天前
地球物理大地测量学计算系列之十七局部重力场SRBF逼近及其性能指标测评
人工智能·算法·机器学习
宣宣猪的小花园.2 天前
【控制算法】PID 不只是三个参数:比例、积分、微分各在解决什么问题
人工智能·嵌入式硬件·机器学习
java1234_小锋2 天前
YOLO26 计算机视觉 - 训练自己的 YOLO26 模型
人工智能·yolo·机器学习·计算机视觉·yolo26