Matlab学习笔记

1.入门

1.1矩阵与运算

a=1 2 3;4 5 6;7 8 9

*表示矩阵乘法

.* .^之类则是对矩阵每个元素运算(点乘)

inv(a)矩阵的逆

format long/short 显示更多/更少位小数

串联 A=a a 横着 a;a 竖着

sum(A)会得到各列的和(得到行向量)

zeros(n,m)得到零矩阵 ones(n,m)得到1矩阵

删除某行或某列用=\[\],如删除整个第二列 X(:,2) = \[\]

x = b/A获得的矩阵方程 xA = b 的解

x = A\b 获得矩阵方程xA=b的解

1.2数组索引

A(4,2)坐标索引

A(10)次序索引,会按照列来数,第一列数满到第二列......

:表示从多少到多少

A(2:4,2)表示提取2~4行,每行的第二列

A(2,:)表示提取第二行的所有列

创建等间距向量值 A=0:10:100,中间是间距,出来是0,1,2,3......100

如果直接0:100,默认间距为1

A(:,1,3,2,4) 取每行,列按1 3 2 4的顺序取每列

用逻辑下标表示法进行按逻辑删除/修改元素:

x = x(isfinite(x)) 删除向量中所有无效值(NaN,Inf),保留有实际的值

x = x(abs(x-mean(x)) <= 3*std(x)) 删除比均值大三倍标准差的离群值

mean求均值,std求标准差

A(~isprime(A)) = 0将非质数设置为0

find函数获取索引:k = find(isprime(A)) %获取所有质数的索引

这样可以A(k**)调取所有质数**

1.3工作区

whos查看工作区全部变量的信息,后面加名字就只查某一个

save保存工作区数据到.mat

load把.mat的数据加载到工作区

clear清除工作区

clc清除命令区

语句无法容纳在某行时,可以用... 这样下一行会串联

1.4字符串

B="sfse"

A="ada" "asfs" "gs";"sge" "fas" "sf"

strlength(A)会对每个元素求长度得到矩阵

a='afawfaw' 字符数组 double(a)可获取ascll码,char(a)再转回去

可以提取每一位,如a(2)='f',字符串就不能提取每一位,因为个体就是最小单位

1.5绘图

linspace(a,b)表连续范围

plot(x,y,"--") 二维平面,虚线

xlabel("") / ylabel("") 给x和y轴命名

title(" ")给图表命名

legend(" "," ")按顺序对线取名

hold on 定住图表,下次更新时保留原图

hold off 解除锁定,下次更新时上次的图会不见

exp()表示e的几次方

三维图 x = linspace(-2,2,20); %20表示只20个点,没加就是一条线
y = x'; %因为要一个行向量,一个列向量
z = x .* exp(-x.^2 - y.^2);
surf(x,y,z)
多个绘图 tiledlayout(2,2) 四个图
每次绘图前都打一遍nexttile表示进入下一图表

1.6编程和脚本

创建实时脚本 edit xxxx.mlx

调用时直接打脚本名

1.7循环和条件语句

if ifelse

for****n = 3:N %3到n
f(n) = f(n-1) + f(n-2);
end

相关推荐
库玛西8 小时前
现代 C++ 智能指针全景指南:从 RAII 思想到工业级实践
c语言·开发语言·c++·笔记·面试
还不秃顶的计科生9 小时前
具身智能论文学习8:Octo: An Open-Source Generalist Robot Policy
人工智能·深度学习·学习·机器学习·语言模型·vla·vlm
woshihuanglaoshi9 小时前
事务加持防超卖:ArkTS 在鸿蒙里玩转 TRANSACTION 出入库
学习·华为·harmonyos
世人万千丶9 小时前
去重插入与超限淘汰:ArkTS 实现鸿蒙搜索历史的 LIMIT 艺术
运维·服务器·学习·华为·harmonyos·鸿蒙
2601_9499506310 小时前
在线练题更方便,用练题簿打造属于自己的移动题库
学习·考研·刷题·小程序推荐
woshihuanglaoshi11 小时前
十二商品二十流水:鸿蒙进销存种子数据装满预警看板
学习·华为·harmonyos
MartinYeung512 小时前
[论文学习]ProAct:针对LLM越狱的主动防禦框架
网络·学习·安全
后季暖12 小时前
langgraph笔记(2)&& fastapi笔记
笔记
weixin_4316004412 小时前
NestJS 入门(10):日志——为什么常用 Winston?
后端·学习·日志·nest.js·winston
小小筱筱12 小时前
LabVIEW笔记:解决周立功CAN卡驱动缺失导致的启动报错问题
笔记·labview