文章目录
matlab变量命名规则
1、变量名区分大小写
2、长度不超过63位
3、以字母开头,可以由字母、数字和下划线组成,但不能使用标点
4、应简单明了,能直接看出其物理意义
clc 清除所有命令
clear all 清除工作区中所有变量
%%+一个空格 注释掉
abs(a) ASCll码
矩阵A
A’转置矩阵
A(:) 竖着拉伸
inv(A) 求方阵A的逆矩阵
E=zeros(10,5,3)10行5列3维(3个矩阵)
E(:,:,1)=rand(10,5)
rand randn randi
rand生成均匀分布的伪随机数 分布在0~1间
rand(m,n)m行n列
rand(m,n,‘double’)指定精度
rand(RandStream,m,n)利用RandStream(随机种子)生成伪随机数
randn生成标准正态分布的伪随机数(均值0 方差1)
语法同上
randi生成均匀分布的伪随机整数
randi(iMax)在开区间(0,iMax)生成均匀分布的伪随机整数
randi(iMax,m,n)在开区间(0,iMax)生成m *n型随机矩阵
r=randi([iMin,iMax],m,n)在开区间(iMin,iMax)生成m *n型随机矩阵
matlab数据类型
元胞数组
A=cell(1,6)
A{2}=eye(3)%从1开始 Python从0开始索引
A{5}=magic(5)%magic 生成N阶幻方
结构体
books=struct('name',{{'Machine Learning','Data Mining'}},'price',[30 40])
books.name%属性
books.name(1)
books.name{1}
MATLAB的矩阵操作
1.矩阵的定义与构造
A={1 2 3 5 8 5 4 6}
B=1:2:9%选取1到9的数字 步长为2 步长不可以缺省
C=repmat(B,3,1)%竖着重复3次 横着重复1次
D=ones(2,4)%2行4列全是1的矩阵
矩阵的四则运算
A=[1 2 3 4;5 6 7 8]
B=[1 1 2 2 ;2 2 1 1]
C=A+B
D=A-B
E=A*B'%B的转置
F=A.*B%A.指的是对应项相乘
G=A/B%G*B=A G*B*pinv(B)=A*pinv(B) G=A*pinv(B) 相当于A*B逆
H=A./B
矩阵的下标
A=magic(5)
B=A(2,3)
C=A(3,:)
D=A(:,4)
[m,n]=find(A>20)%找大于20的序号值/矩阵
在 MATLAB 中使用 find () 函数在数组中查找值的索引 在数组中,元素被放置在从 1 开始的某些索引上,依此类推。 要在给定数组中查找值的索引,我们可以使用 find () 函数。
MATLAB逻辑与流程控制
if…else…end
for…end
while…end
switch…case…end
MATLAB基本绘图操作
二维平面绘图
x=0:0.01:2*pi
y=sin(x)
figure%建立一个幕布
plot(x,y)
title('y=sin(x)')
xlabel('x')
ylabel('sin(x)')
xlim([0 2*pi])
x=0:0.01:20
y1=200*exp(-0.05*x).*sin(x)
y2=0.8*exp(-0.5*x).*sin(10*x)
figure
[AX,H1,H2]=plotyy(x,y1,x,y2,'plot')
set(get(AX(1),'Ylabel'),'String','Slow Decay')
set(get(AX(2),'Ylabel'),'String','Fast Decay')
xlabel('Tine (\musec)')
title('Mutiple Decay Rates')
set(H1,'LineStyle','--')
set(H2,'LineStyle',':')
三维立体绘图
t=0:pi/50:10*pi;
plot3(sin(t),cos(t),t)
xlabel('sin(t)')
ylabel('cos(t)')
zlabel('t')
grid on%绘图 在图片之中加一定的网格线
axis square%图片变方
hold on 在同一张图片或者幕布中绘制多条线 ;添加新绘图时保存当前绘图
hold off不保存当前的东西;画图figure时,取消原来的图
图形的导出
编辑–复制图形
文件–另存为