Matlab基础用法全攻略:从操作到函数

基本操作

基础


命令作用
%注释
^次方
==等于
~=不等于
&&逻辑与
||逻辑或
xor(a,b)异或

注意:MATLAB中下标从1开始

变量


命令作用
a = 3声明变量并输出
a = 3;加分号,抑制输出
1/0True、False
pi3.14…
disp(…)括号内可以放入更复杂的指令,甚至C语言命令
format long格式化数字的格式
format short同上

向量、矩阵

A = [1 2; 3 4; 5 6]
A = [1 2;
3 4;
5 6]
V = [1 2 3] %行向量
V = [1; 2; 3] %列向量
v = 1:0.1:2 %生成从1到2步长为0.1的一些数
v = 1:6 %默认步长为1
ones(2,3) %全为1
2*ones(2,3) %全为2
zeros(1,3)
rand(1,3) %随机,0到1
randn(1,3) %服从高斯分布的随机值。均值为0,方差为1

hist(v,num) %绘制直方图,num:直方数量

eye(n) %生成n阶单位矩阵

help command %帮助命令

移动数据

就是对数据进行加载(为矩阵)、操作、移动

1.矩阵操作
矩阵A,向量v

size(A) %返回矩阵的shape
size(A,n) %返回矩阵第n维的大小

length(v) %返回向量长度
length(A) %返回矩阵最长的维度的长度

2.数据的加载
pwd % 当前所在路径
cd % 改变路径
ls

load filename
load ('filename')

who % 输出当前内存中存储的所有变量名
whos %更详细(size、bytes、类型)

clear 变量名 %删除一个变量
clear %删除所有变量

3.数据的操作
v = priceY(1:10)
save filename 变量名 %保存变量(二进制)
save filename 变量名 -ascii %保存为text格式

A(:,2) = [..;..;] %赋值
A = [A,[..;..;..]] %追加
A(:) %把A放在一个向量中
矩阵AB
C = [A B] %横着合并
C = [A;B] %竖着

计算数据

A * B  %矩阵乘法
A .* B %对应位置相乘
A .^ 2 %A中所有元素平方
%% 通常.(点)表示对每一个位置的元素进行操作
1 ./ A %A中所有元素求倒数
log(v)
exp(v) %以e为底,v中元素为指数的幂运算
abs(v) %绝对值
-v
v + ones(length(v),1)
v + 1
A' %转置
pinv(A) %求伪逆
val = max(v)
val = max(A) % 得到每一列的最大值
[val,index] = max(A)
v < 3 %返回各元素是否小于3
find(条件) %找出满足条件的所有元素
[a,b] = xxx() %接收两个参数

sum(A)
prod(A) %所有元素乘积
floor(A)
ceil()

rand(3) %3x3的随机矩阵

数据绘制

plot(x,y)

2.两个图片在一起
plot(x,y1)
hold on
plot(x,y2,'red')
xlabel('xxx')
ylabel('xxx')
legend('y1','y2')
title('xxx')
print -dpng 'filename.png' %导出图像
close %关闭图像

3.展示两个窗体
figure(1);plot(x,y1);
figure(2);plot(x,y2);

subplot(1,2,1);
axis([x_low,x_high,y_low,y_high])
clf %清楚图像

imagesc(A) %可视化矩阵,不同的颜色表示不同的元素
colorbar %颜色与数值的对应bar
colormap 具体的map;

逗号和分号可以连接语句

控制语句

1.for循环
for i=1:10,
	v(i) = 2^i;
end;

indexs = 1:10;
for i=indexs,
	....
end;

break,continue,都可以使用

2.while循环
i = 1;
while i <= 5,
	v(i) = 100;
	i=i+1;
end;

i = 1;
while true,
	xxx;
	if xxx,
		break;
	end;
end;

3.if-else
if 条件1,
	xxx;
elseif 条件2,
	xxx;
else
	xxx;
end;

exit、quit %退出

函数

1.创建函数
需要创建一个文件:函数名.m

function 返回值 = 函数名(变量名)
函数主体

2.调用函数
y = 函数名(x)

3.进阶
%返回两个值
function [y1,y2] = 函数名(x)
...
%调用
[a,b] = 函数名(10)

向量化(Vectorization)

在这里插入图片描述
在这里插入图片描述


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空