文章目录
- 前言
- 环境配置
- 1. 数据结构本质
- 2. 运算规则
- (1)基本运算
- (2)特殊运算
- 3. 函数与操作
- 4. 高维支持
- 5. 创建方式
前言
在 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 中数组是更通用的数据结构,支持向量化运算,代码更简洁高效。
- 仅在必要时用矩阵:当明确需要线性代数运算(如矩阵求逆、特征值计算)时使用矩阵。