Matlab学习笔记
Matlab学习笔记
一 .基础数据结构和常用函数
基本数据结构
numeric(矩阵类型)
numeric
代表矩阵:比如输入a=1
,那么它的形状是(1,1)class默认是double,double
指的是a
这个矩阵里面元素的数据类型,这一点和python很大的不同,python中的数字类型是没有形状的,不是按照矩阵形式保存的
关于矩阵中元素数据类型转换,因为默认是double,还可以转为int8...等等
关于矩阵的索引:
关于矩阵的元素数值的更改:
先利用索引取出矩阵中相应元素,然后进行赋值即可,注意赋值号左右两边形状相同
%% a 1 2 3 3 4 6 a(:, 1:2) = [5 6 ;3 4]
矩阵组合
列增广:(原矩阵行数不变,列数相加)c = [a b]
行增广:c = [a; b]
矩阵四维运算
矩阵与矩阵之间的运算
'+' '-' # 矩阵对应元素相加减 '*' '.*' # 矩阵乘法和矩阵对应元素相乘 'A / B' # 约等于A * inv(B) './' # 对应元素相除 'A’' # 转置
矩阵与实数的运算
# A+a A/a A./a A*a A.*a和你想的一样,不解释了,这里加不加点都一样 A^a A.^a # 不一样,前者相对矩阵,后者是矩阵中的元素
特殊的矩阵
矩阵常用的函数
补充三个:
改变矩阵形状:reshape(A,3,4)
矩阵增加一列或一行:用行增广或者列增广
删除一列或一行:c(:, 4) = []
取出某一列或者一行,设为[]
即可
structure
一些常用的函数
cell
cell的两种声明方式:都要加{},取出cell中的元素时,()取出来的依旧是cell,{}取出来的是真实的cell中的数据
比如:
a = 2×2 cell 数组 {2×2 double} {0×0 double} {0×0 double} {'xiaoming'} >> a(1,1) ans = 1×1 cell 数组 {2×2 double} >> a{1,1} ans = 1 2 3 4
一些常用函数
系统常用函数
who、whos
who
会列出当前工作区的所有变量 名
whos
会列出工作区所有变量的详细信息,比如字节,数据类型,形状等
whos
变量名 只列出指定变量的详细信息
clear
clear
:清除工作区所有变量
clear 变量名
:只清除工作区指定变量
format
显示数据在命令窗口输出的格式,format rat
是显示分数形式,format longE
是以科学计数法显示
colon operator
等差数列生成器,就是:
起始数:等差间隔:结束数
比如1:2:6 会生成一个矩阵[1 3 5]
rem 和disp
rem(3,2)求3对2的余数
disp('a') 将内容输出到命令行窗口
prod
prod([1 2 3]) 后面接一个向量,会把向量元素相乘
prod(1:n) n的阶乘
cat
cat(1,a,b) 1表示行增广,将a,b行增广连接,相当于[a;b]
cat(3,a,b)是在第三维layer上增广
常用关键字
ans、i,j(复数运算)、Inf(很大的数)、eps(很小的数)、NaN(未定义)、pi
iskeyword会列出常用关键字
如果变量名和关键字重名,变量名会比关键字优先级高,当你调用该关键字时会错误的调用变量
注释和智能缩进
一个%是单行注释
如果要对多行注释,选中多行,然后点击右键选择注释即可,或者点击窗口中的注释工具
两个%之间的内容称为节,点击运行节,可以只运行这个节的内容
选中所有代码,右键选择智能缩进,可以对内容自动缩进
保存读取数据
二 .控制流和函数
控制流
switch case otherwise
% switch后面是一个特定的值,case后面对应的是特定的案列,值等于某个case案例时,执行该case下面的语句 input_num=-1; switch input_num case -1 disp('-1') case 2 disp('2') otherwise disp('不是-1或者2') end
tic % tic toc组合会输出这段代码运行时间 a = zeros(1,10); % 预分配内存会更快 for n=1:10 a(n)=n^2; end disp(a) toc
逻辑运算符
函数
查看一个内建函数的文件所在的位置,matlab中的函数都是以.m
的文件形式保存的
which('mean.m')
edit(which('mean.m'))
会打开这个函数文件
# function 函数输出=函数名(函数输入) 函数名是等于函数文件名的,函数文件名开头第一行如下所示 # 单输出 function y = add(x1, x2) y = x1 + x2; # 多输出 function [a, F] = test(v2, v1, t2, t1, m) a = (v2 - v1) ./ (t2 -t1); F = m.*a; # 调用多输出,要加中括号 [x, y] = test(2, 1, 2, 1, 5)
判断函数的输入输出参数值,或者输入输出变量长度
函数句柄
就是函数的简易写法,将一个函数赋值给一个变量,该变量类型是函数句柄类型
>> clear >> f = @(x)exp(-2*x); # @(输入变量)函数体 >> x = 0:0.1:2; >> plot(x, f(x)) >> whos f Name Size Bytes Class Attributes f 1x1 32 function_handle
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具