MATLAB 矩阵

MATLAB 中,矩阵是最基本的数据结构之一,用于表示和处理二维数据。以下是一些关于矩阵的重要概念和操作:

创建矩阵

直接输入:

matlab 复制代码
A = [1 2 3; 4 5 6; 7 8 9];

这会创建一个 3x3 的矩阵 A

使用 zeros, ones, eye 函数:

matlab 复制代码
B = zeros(3); % 创建一个 3x3 的全零矩阵
C = ones(4);  % 创建一个 4x4 的全一矩阵
D = eye(3);   % 创建一个 3x3 的单位矩阵

使用 rand, randi 函数:

matlab 复制代码
E = rand(2, 3);   % 创建一个 2x3 的矩阵,填充随机小数
F = randi(10, 2, 3); % 创建一个 2x3 的矩阵,填充 1 到 10 之间的随机整数

使用 diag 函数:

matlab 复制代码
diagV = [1 2 3];
G = diag(diagV); % 创建一个对角线为 diagV,其余为零的 3x3 矩阵

矩阵操作

矩阵加法和减法:

matlab 复制代码
H = A + B; % 矩阵 A 和 B 的逐元素加法
I = A - B; % 矩阵 A 和 B 的逐元素减法

矩阵乘法:

matlab 复制代码
J = A * B; % 矩阵 A 和 B 的矩阵乘法

矩阵转置:

matlab 复制代码
K = A.'; % 矩阵 A 的转置

矩阵求逆:

matlab 复制代码
L = inv(A); % 矩阵 A 的逆矩阵

矩阵分解:

matlab 复制代码
[P, Q, R] = svd(A); % 对 A 进行奇异值分解

矩阵大小:

matlab 复制代码
[m, n] = size(A); % m 是 A 的行数,n 是 A 的列数

矩阵索引:

matlab 复制代码
element = A(2, 3); % 获取 A 中第 2 行第 3 列的元素
A(2, 3) = 10;     % 将 A 中第 2 行第 3 列的元素设置为 10

矩阵拼接:

matlab 复制代码
S = [A, B; C, D]; % 水平拼接 A 和 B,垂直拼接 C 和 D

矩阵函数

MATLAB 提供了许多内置函数来处理矩阵,例如:

matlab 复制代码
det:计算矩阵的行列式。
rank:计算矩阵的秩。
eig:计算矩阵的特征值和特征向量。
chol:进行 Cholesky 分解。
qr:进行 QR 分解。

矩阵特性

matlab 复制代码
方阵:行数和列数相等的矩阵。
对角矩阵:除了对角线上的元素,其余元素都是零。
稀疏矩阵:大多数元素为零的矩阵。
对称矩阵:A = A'。
正交矩阵:A * A' = A' * A = eye(size(A))。

总结

矩阵是 MATLAB 中的核心概念,掌握矩阵的创建和操作对于进行数学计算和数据分析至关重要。

相关推荐
Nil20838 分钟前
leetcode 138随机链表的复制
算法·leetcode·链表
疯狂打码的少年2 小时前
【数据结构】图的遍历:深度优先搜索(DFS)
数据结构·笔记·算法·深度优先
-凌凌漆-3 小时前
【freertos】Task创建(v2)
java·开发语言·算法
Nil2084 小时前
leetcode 24两两交换链表中的节点
算法·leetcode·链表
.格子衫.4 小时前
033动态规划之状态压缩DP——算法备赛
算法·动态规划
ysa0510304 小时前
c++常用自带函数用法与注意
c++·笔记·算法
带多刺的玫瑰5 小时前
Leecode#4刷题之寻找两个正序数组的中位数
java·前端·算法
土司大王6 小时前
LeetCode hot100——除了自身以外数组的乘积
数据结构·算法·leetcode
IvanCodes6 小时前
RAG 实战教程(三):向量数据库检索算法,KNN、IVF、HNSW 与 Faiss 实战
人工智能·算法·agent