Matlab中的矩阵运算

Matlab 矩阵运算命令总结。

disp(sprintf(‘2 decimals: %0.2f’, a))

v = 1:0.1:2 起点为 1,步长为 0.1,终点为 2
结果为 1 行 11 列的矩阵

v = 1:6 默认步长是 1

ones(2, 3) 生成一个 2 行 3 列的元素都是 1 的矩阵
zeros(2, 3) 生成一个 2 行 3 列的元素都是 0 的矩阵
rand(2, 3) 生成一个 2 行 3 列的元素都是随机数的矩阵
randn(1, 3) 生成一个 1 行 3 列的元素都是高斯随机数的矩阵(高斯随机数:平均值为 0,方差或标准差为 1)

hist(w) 绘制直方图
hist(w, 10) 增加直方图中的条数

eye(3) 生成 3 阶单位矩阵

size(A) 返回矩阵 A 的行列数
size(A, 1) 返回矩阵的行数
size(A, 2) 返回矩阵的列数

length(A) 返回矩阵的最大维数

load featuresX.dat 载入文件(文件被载入后,相应的变量为 featureX)

who 列出变量
whos 列出变量及其详细信息

clear featureX 清除变量

v = featureX(1:10) 将变量 featureX 中的前十个数存入到变量 v 中(这里假设 featureX 只有一列)

save hello.mat v 将变量 v 存储到硬盘上且文件名e为 hello.mat(这里是以二进制文本的形式存储的)

save hello.txt v -ascii (这里是以 ASCII 文本的形式存储数据,使人可以看懂)

A(3, 2) 访问矩阵 A 的第三行第二列的数据
A(3, :) 访问矩阵 A 的第三行的所有数据
A(:, 3) 访问矩阵 A 的第三列的所有数据
A([1,3], :) 访问矩阵 A 的第一行和第三行的所有元素
A = [A, [1; 2; 3;] 在矩阵 A 的右边再添一列
A[:] 把 A 中的所有元素放入一个变量中(一个一行 n 列的j向量)

C = [A B] 把矩阵 A 和 B 连在一起(A 在左边,B 在右边)
C = [A; B] A 在上边,B 在下边

A .* B 内积
A .^ 2 A 中每个元素平方一下
1 ./ A 矩阵 A 每个元素倒数一下
log(A) 取对数(以 2 为底)
exp(A) e 的每个元素的次方
abs(A) 绝对值
A + 1 每个元素都加 1
-A 每个元素取相反数
A’ 转置
max(A) 每一列中的最大值
A > 1 比较每个元素与 1 的大小
find(A > 1) 找出 A 中每个大于 1 的元素

sum(A)
prod(A) 相乘每个元素
floor(A)
ceil(A)
max(A, [], 1) 返回每列的最大值
max(A, [], 2) 返回每行的最大值

flipud(eye(3)) 变主对角线为副对角线

pinv(A) 逆


画图
plot(t, y1) 横轴是 t 纵轴是 y
hold on;
plot(t, y2, ‘r’) 红色
xlabel(‘time’) 标签
ylabel(‘value’)
legend(‘sin’, ‘cos’) 图例
title(‘my plots’) 标题
print -dpng ‘myplot.png’ 保存图像

------本文结束感谢您的阅读 ------
0%