【收藏】Matlab常用命令汇总_matlab机器学习中常用的函数命令-程序员宅基地

技术标签: matlab  人工智能  

一、常用对象操作:除了一般windows窗口的常用功能键外。
1、!dir 可以查看当前工作目录的文件。 !dir& 可以在dos状态下查看。
2、who 可以查看当前工作空间变量名, whos 可以查看变量名细节。
3、功能键:
功能键 快捷键 说明
方向左键 Ctrl+B 光标向后移一个字符
方向右键 Ctrl+F 光标向前移一个字符
Ctrl+方向右键 Ctrl+R 光标向右移一个字符
Ctrl+方向左键 Ctrl+L 光标向左移一个字符
home Ctrl+A 光标移到行首
End Ctrl+E 光标移到行尾
Esc Ctrl+U 清除一行
Del Ctrl+D 清除光标所在的字符
Backspace Ctrl+H 删除光标前一个字符
Ctrl+K 删除到行尾
Ctrl+C 中断正在执行的命令
4、clc可以命令窗口显示的内容,但并不清除工作空间。
二、函数及运算
1、运算符:
+:加, -:减, *:乘, /: 除, :左除 ^: 幂,‘:复数的共轭转置, ():制定运算顺序。
2、常用函数表:
sin( ) 正弦(变量为弧度)
Cot( ) 余切(变量为弧度)
sind( ) 正弦(变量为度数)
Cotd( ) 余切(变量为度数)
asin( ) 反正弦(返回弧度)
acot( ) 反余切(返回弧度)
Asind( ) 反正弦(返回度数)
acotd( ) 反余切(返回度数)
cos( ) 余弦(变量为弧度)
exp( ) 指数
cosd( ) 余弦(变量为度数)
log( ) 对数
acos( ) 余正弦(返回弧度)
log10( ) 以10为底对数
acosd( ) 余正弦(返回度数)
sqrt( ) 开方
tan( ) 正切(变量为弧度)
realsqrt( ) 返回非负根
tand( ) 正切(变量为度数)
abs( ) 取绝对值
atan( ) 反正切(返回弧度)
angle( ) 返回复数的相位角
atand( ) 反正切(返回度数)
mod(x,y) 返回x/y的余数
sum( ) 向量元素求和
3、其余函数可以用help elfun和help specfun命令获得。
4、常用常数的值:
pi 3.1415926…….
realmin 最小浮点数,2^-1022
i 虚数单位
realmax 最大浮点数,(2-eps)2^1022
j 虚数单位
Inf 无限值
eps 浮点相对经度=2^-52
NaN 空值
三、数组和矩阵:
1、构造数组的方法:增量发和linspace(first,last,num)first和last为起始和终止数,num为需要的数组元素个数。
2、构造矩阵的方法:可以直接用[ ]来输入数组,也可以用以下提供的函数来生成矩阵。
ones( ) 创建一个所有元素都为1的矩阵,其中可以制定维数,1,2….个变量
zeros() 创建一个所有元素都为0的矩阵
eye() 创建对角元素为1,其他元素为0的矩阵
diag() 根据向量创建对角矩阵,即以向量的元素为对角元素
magic() 创建魔方矩阵
rand() 创建随机矩阵,服从均匀分布
randn() 创建随机矩阵,服从正态分布
randperm() 创建随机行向量
horcat C=[A,B],水平聚合矩阵,还可以用cat(1,A,B)
vercat C=[A;B],垂直聚合矩阵, 还可以用cat(2,A,B)
repmat(M,v,h) 将矩阵M在垂直方向上聚合v次,在水平方向上聚合h次
blkdiag(A,B) 以A,和B为块创建块对角矩阵
length 返回矩阵最长维的的长度
ndims 返回维数
numel 返回矩阵元素个数
size 返回每一维的长度,[rows,cols]=size(A)
reshape 重塑矩阵,reshape(A,2,6),将A变为2×6的矩阵,按列排列。
rot90 旋转矩阵90度,逆时针方向
fliplr 沿垂轴翻转矩阵
flipud 沿水平轴翻转矩阵
transpose 沿主对角线翻转矩阵
ctranspose 转置矩阵,也可用A’或A.’,这仅当矩阵为复数矩阵时才有区别
inv 矩阵的逆
det 矩阵的行列式值
trace 矩阵对角元素的和
norm 矩阵或矢量的范数,norm(a,1),norm(a,Inf)…….
normest 估计矩阵的最大范数矢量
chol 矩阵的cholesky分解
cholinc 不完全cholesky分解
lu LU分解
luinc 不完全LU分解
qr 正交分解
kron(A,B) A为m×n,B为p×q,则生成mp×nq的矩阵,A的每一个元素都会乘上B,并占据p×q大小的空间
rank 求出矩阵的刺
pinv 求伪逆矩阵
A^p 对A进行操作
A.^P 对A中的每一个元素进行操作
四、数值计算
1、线性方程组求解
(1)AX=B 的解可以用X=AB求。XA=B的解可以用X= A/B求。如果A是m×n的矩阵,当m=n时可以找到唯一解,m<n,不定解,解中至多有m个非零元素。如果m>n,超定系统,至少找到一组解。如果A是奇异的,且AX=B有解,可以用X=pinv(A)×B返回最小二乘解
(2)AX=b, A=L×U,[L,U]=lu(A), X=U(Lb),即用LU分解求解。
(3)QR(正交)分解是将一矩阵表示为一正交矩阵和一上三角矩阵之积,A=Q×R[Q,R]=chol(A), X=Q(Ub)
(4)cholesky分解类似。
2、特征值
D=eig(A)返回A的所有特征值组成的矩阵。[V,D]=eig(A),还返回特征向量矩阵。
3、A=U×S×UT,[U,S]=schur(A).其中S的对角线元素为A的特征值。
4、多项式Matlab里面的多项式是以向量来表示的,其具体操作函数如下:
conv 多项式的乘法
deconv 多项式的除法,【a,b】=deconv(s),返回商和余数
poly 求多项式的系数(由已知根求多项式的系数)
polyeig 求多项式的特征值
Polyfit(x,y,n) 多项式的曲线拟合,x,y为被拟合的向量,n为拟合多项式阶数。
polyder 求多项式的一阶导数,polyder(a,b)返回ab的导数
[a,b]=polyder(a,b)返回a/b的导数。
polyint 多项式的积分
polyval 求多项式的值
polyvalm 以矩阵为变量求多项式的值
residue 部分分式展开式
roots 求多项式的根(返回所有根组成的向量)
注:用ploy(A)求出矩阵的特征多项式,然后再求其根,即为矩阵的特征值。
5、插值常用的插值函数如下:
griddata 数据网格化合曲面拟合
Griddata3 三维数据网格化合超曲面拟合
interp1 一维插值(yi=interp1(x,y,xi,’method’)Method=nearest/linear/spline/pchip/cubic
Interp2 二维插值zi=interp1(x,y,z,xi,yi’method’),bilinear
Interp3 三维插值
interpft 用快速傅立叶变换进行一维插值,help fft。
mkpp 使用分段多项式
spline 三次样条插值
pchip 分段hermit插值
6、函数最值的求解
fminbnd(‘f’,x1,x2,optiset(,))求f在 x1和x2之间的最小值。Optiset选项可以有‘Display’+‘iter’/’off’/’final’,分别表示显示计算过程/不显示/只显示最后结果。fminsearch求多元函数的最小值。fzero(‘f’,x1)求一元函数的零点。X1为起始点。同样可以用上面的选项。
五、图像绘制:
1、基本绘图函数
plot 绘制二维线性图形和两个坐标轴
plot3 绘制三维线性图形和两个坐标轴
fplot 在制定区间绘制某函数的图像。fplot(‘f’,区域,线型,颜色)
loglog 绘制对数图形及两个坐标轴(两个坐标都为对数坐标)semilogx 绘制半对数坐标图形
semilogy 绘制半对数坐标图形
2、线型: 颜色 线型
y 黄色 . 圆点线 v 向下箭头
g 绿色 -. 组合 > 向右箭头
b 蓝色 + 点为加号形 < 向左箭头
m 红紫色 o 空心圆形 p 五角星形
c 蓝紫色 * 星号 h 六角星形
w 白色 . 实心小点 hold on 添加图形
r 红色 x 叉号形状 grid on 添加网格
k 黑色 s 方形 - 实线
d 菱形 – 虚线 ^ 向上箭头
3、可以用subplot(3,3,1)表示将绘图区域分为三行三列,目前使用第一区域。此时如要画不同的图形在一个窗口里,需要hold on。

=================================================================

附录1.1 管理用命令
函数名 功能描述 函数名 功能描述
addpath 增加一条搜索路径 rmpath 删除一条搜索路径
demo 运行Matlab演示程序 type 列出.M文件
doc 装入超文本文档 version 显示Matlab的版本号
help 启动联机帮助 what 列出当前目录下的有关文件
lasterr 显示最后一条信息 whatsnew 显示Matlab的新特性
lookfor 搜索关键词的帮助 which 造出函数与文件所在的目录
path 设置或查询Matlab路径

附录1.2管理变量与工作空间用命令
函数名 功能描述 函数名 功能描述
clear 删除内存中的变量与函数 pack 整理工作空间内存
disp 显示矩阵与文本 save 将工作空间中的变量存盘
length 查询向量的维数 size 查询矩阵的维数
load 从文件中装入数据 who,whos 列出工作空间中的变量名

附录1.3文件与操作系统处理命令
函数名 功能描述 函数名 功能描述
cd 改变当前工作目录 edit 编辑.M文件
delete 删除文件 matlabroot 获得Matlab的安装根目录
diary 将Matlab运行命令存盘 tempdir 获得系统的缓存目录
dir 列出当前目录的内容 tempname 获得一个缓存(temp)文件
! 执行操作系统命令

附录1.4窗口控制命令
函数名 功能描述 函数名 功能描述
echo 显示文件中的Matlab中的命令 more 控制命令窗口的输出页面
format 设置输出格式

附录1.5启动与退出命令
函数名 功能描述 函数名 功能描述
matlabrc 启动主程序 quit 退出Matlab环境
startup Matlab自启动程序

附录2 运算符号与特殊字符附录
2.1运算符号与特殊字符
函数名 功能描述 函数名 功能描述

  • 加 … 续行标志
  • 减 , 分行符(该行结果不显示)
  • 矩阵乘 ; 分行符(该行结果显示)
    .* 向量乘 % 注释标志
    ^ 矩阵乘方 ! 操作系统命令提示符
    .^ 向量乘方 矩阵转置
    kron 矩阵kron积 . 向量转置
    矩阵左除 = 赋值运算
    / 矩阵右除 == 关系运算之相等
    . 向量左除 ~= 关系运算之不等
    ./ 向量右除 < 关系运算之小于
    : 向量生成或子阵提取 <= 关系运算之小于等于
    () 下标运算或参数定义 > 关系运算之大于
    [] 矩阵生成 >= 关系运算之大于等于
    {} & 逻辑运算之与
    . 结构字段获取符 | 逻辑运算之或
    . 点乘运算,常与其他运算符联合使用(如.) ~ 逻辑运算之非
    xor 逻辑运算之异成

附录2.2逻辑函数
函数名 功能描述 函数名 功能描述
all 测试向量中所用元素是否为真 is*(一类函数) 检测向量状态.其中*表示一个确定的函数(isinf)
any 测试向量中是否有真元素 *isa 检测对象是否为某一个类的对象
exist 检验变量或文件是否定义 logical 将数字量转化为逻辑量
find 查找非零元素的下标

附录3 语言结构与调试
附录3.1编程语言
函数名 功能描述 函数名 功能描述
builtin 执行Matlab内建的函数 global 定义全局变量
eval 执行Matlab语句构成的字符串 nargchk 函数输入输出参数个数检验
feval 执行字符串指定的文件 script Matlab语句及文件信息
function Matlab函数定义关键词

附录3.2控制流程
函数名 功能描述 函数名 功能描述
break 中断循环执行的语句 if 条件转移语句
case 与switch结合实现多路转移 otherwise 多路转移中的缺省执行部分
else 与if一起使用的转移语句 return 返回调用函数
elseif 与if一起使用的转移语句 switch 与case结合实现多路转移
end 结束控制语句块 warning 显示警告信息
error 显示错误信息 while 循环语句
for 循环语句

附录3.3交互输入
函数名 功能描述 函数名 功能描述
input 请求输入 menu 菜单生成
keyboard 启动键盘管理 pause 暂停执行

附录3.4面向对象编程
函数名 功能描述 函数名 功能描述
class 生成对象 isa 判断对象是否属于某一类
double 转换成双精度型 superiorto 建立类的层次关系
inferiorto 建立类的层次关系 unit8 转换成8字节的无符号整数
inline 建立一个内嵌对象

附录3.5调试
函数名 功能描述 函数名 功能描述
dbclear 清除调试断点 dbstatus 列出所有断点情况
dbcont 调试继续执行 dbstep 单步执行
dbdown 改变局部工作空间内存 dbstop 设置调试断点
dbmex 启动对Mex文件的调试 sbtype 列出带命令行标号的.M文件
dbquit 退出调试模式 dbup 改变局部工作空间内容
dbstack 列出函数调用关系

附录4 基本矩阵与矩阵处理
附录4.1基本矩阵
函数名 功能描述 函数名 功能描述
eye 产生单位阵 rand 产生随机分布矩阵
linspace 构造线性分布的向量 randn 产生正态分布矩阵
logspace 构造等对数分布的向量 zeros 产生零矩阵
ones 产生元素全部为1的矩阵 : 产生向量

附录4.2特殊向量与常量
函数名 功能描述 函数名 功能描述
ans 缺省的计算结果变量 non 非数值常量常由0/0或Inf/Inf获得
computer 运行Matlab的机器类型 nargin 函数中参数输入个数
eps 精度容许误差(无穷小) nargout 函数中输出变量个数
flops 浮点运算计数 pi 圆周率
i 复数单元 realmax 最大浮点数值
inf 无穷大 realmin 最小浮点数值
inputname 输入参数名 varargin 函数中输入的可选参数
j 复数单元 varargout 函数中输出的可选参数

附录4.3时间与日期
函数名 功能描述 函数名 功能描述
calender 日历 eomday 计算月末
clock 时钟 etime 所用时间函数
cputime 所用的CPU时间 now 当前日期与时间
date 日期 tic 启动秒表计时器
datenum 日期(数字串格式) toc 读取秒表计时器
datestr 日期(字符串格式) weekday 星期函数
datevoc 日期(年月日分立格式)

附录4.4矩阵处理
函数名 功能描述 函数名 功能描述
cat 向量连接 reshape 改变矩阵行列个数
diag 建立对角矩阵或获取对角向量 rot90 将矩阵旋转90度
fliplr 按左右方向翻转矩阵元素 tril 取矩阵的下三角部分
flipud 按上下方向翻转矩阵元素 triu 取矩阵的上三角部分
repmat 复制并排列矩阵函数

附录5 特殊矩阵
函数名 功能描述 函数名 功能描述
compan 生成伴随矩阵 invhilb 生成逆hilbert矩阵
gallery 生成一些小的测试矩阵 magic 生成magic矩阵
hadamard 生成hadamard矩阵 pascal 生成pascal矩阵
hankel 生成hankel矩阵 toeplitz 生成toeplitz矩阵
hilb 生成hilbert矩阵 wilkinson 生成wilkinson特征值测试矩阵
附录6 数学函数
附录6.1三角函数
函数名 功能描述 函数名 功能描述
sin/asin 正弦/反正弦函数 sec/asec 正割/反正割函数
sinh/asinh 双曲正弦/反双曲正弦函数 sech/asech 双曲正割/反双曲正割函数
cos/acos 余弦/反余弦函数 csc/acsc 余割/反余割函数
cosh/acosh 双曲余弦/反双曲余弦函数 csch/acsch 双曲余割/反双曲余割函数
tan/atan 正切/反正切函数 cot/acot 余切/反余切函数
tanh/atanh 双曲正切/反双曲正切函数 coth/acoth 双曲余切/反双曲余切函数
atan2 四个象限内反正切函数

附录6.2指数函数
函数名 功能描述 函数名 功能描述
exp 指数函数 log10 常用对数函数
log 自然对数函数 sqrt 平方根函数

附录6.3复数函数
函数名 功能描述 函数名 功能描述
abs 绝对值函数 imag 求虚部函数
angle 角相位函数 real 求实部函数
conj 共轭复数函数

附录6.4数值处理
函数名 功能描述 函数名 功能描述
fix 沿零方向取整 round 舍入取整
floor 沿-∞方向取整 rem 求除法的余数
ceil 沿+∞方向取整 sign 符号函数

附录6.5其他特殊数学函数
函数名 功能描述 函数名 功能描述
airy airy函数 erfcx 比例互补误差函数
besselh bessel函数(hankel函数) erfinv 逆误差函数
bessili 改进的第一类bessel函数 expint 指数积分函数
besselk 改进的第二类bessel函数 gamma gamma函数
besselj 第一类bessel函数 gammainc 非完全gamma函数
bessely 第二类bessel函数 gammaln gamma对数函数
beta beta函数 gcd 最大公约数
betainc 非完全的beta函数 lcm 最小公倍数
betaln beta对数函数 log2 分割浮点数
**elipj Jacobi椭圆函数 legendre legendre伴随函数
ellipke 完全椭圆积分 pow2 基2标量浮点数
erf 误差函数 rat 有理逼近
erfc 互补误差函数 rats 有理输出
================================================================**

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42462804/article/details/88374549

智能推荐

php文件上传路径怎么找,如何获取PHP中上传文件的完整路径?-程序员宅基地

文章浏览阅读1k次。到目前为止,我的代码段:if(isset($_POST['submit'])) {$uploaddir = '/www/csvExtraction/uploads/';$uploadfile = $uploaddir . basename($_FILES['file']['name']);if (move_uploaded_file($_FILES['file']['tmp_name'], $u..._php获取上传文件是从哪个盘

TPM分析笔记(四)TPM-TSS协议栈_tpm协议栈及工具-程序员宅基地

文章浏览阅读4.5k次,点赞5次,收藏17次。TSS包含以下由高到低的几层软件:FAPI,ESAPI,SAPI,TCTI(TPM Command Transmission Interface),TAB(TPM Access Broker),RM(Resource Manager),和设备驱动。大多数的用户层引用程序基于FAPI开发就可以了,因为FAPI实现了TPM百分之八十的常用应用场景。使用这一层开发应用就像是使用JAVA,C#等高级语言开发应用一样方便。往下一层是ESAPI,它需要你对TPM了解很深,但是同时提供了会话管理以及加解密的辅助功_tpm协议栈及工具

数学建模作业3_某厂向用户提供发动机,合同规定,第一、二、三季度末分别交货40台、60台、80台.每-程序员宅基地

文章浏览阅读7.9k次,点赞15次,收藏87次。一.某厂向用户提供发动机,合同规定,第一、二、三季度末分别交货40台、60台、80台。每季度的生产费用为f{x)=ax+bx2(元),其中x是该季生产的台数。若交货后有剩余,可用于下季度交货,但需支付存储费,每台每季度c元。已知厂每季度最大生产能力为100台,第一季度开始时无存货,设a=50、b=0.2、c=4,问工厂应如何安排生产计划,才能既满足合同又使总费用最低?解:记第一二三季度分别生产x1、x2、x3台机器季度 费用 一 50x1+0.2x1x1+4(x1-40) 二_某厂向用户提供发动机,合同规定,第一、二、三季度末分别交货40台、60台、80台.每

DPCM预测编码压缩及其分析_dpcm的基本思想-程序员宅基地

文章浏览阅读1.2k次。文章目录DPCM预测编码压缩及其分析1 算法原理2 算法实现主函数DPCM函数计算PSNR3 实验结果3.1 图像结果3.2 计算PSNR(峰值信噪比)3.3 概率分布4. 压缩比DPCM预测编码压缩及其分析1 算法原理DPCM即差分脉冲编码调制,基本思想是对信号差值进行量化。由于实际图片的像素之间存在相关性,所以进行差值计算之后,得到的重复差值会较多,信源熵随之减小。通过对《信息论与编码原理》这门课的学习,我们已经知道大量重复,且取值范围比原分布范围更窄的差值,在应用变长Huffman编码时,其_dpcm的基本思想

fast-reid跑通自己的数据_fastreid-程序员宅基地

文章浏览阅读3.5k次,点赞8次,收藏22次。使用fast-reid跑通自己的数据fastreid The size of tensor a (3) must match the size of tensor b (4) at non-singleton dimension 0_fastreid

Qt系列之7:QML高级特性及音乐播放器项目实战_qml播放音乐-程序员宅基地

文章浏览阅读837次。课程目标:学习QML的传统经典音乐播放器项目实战;QML的高仿酷狗音乐播放器项目实战。课程简介:1.带领您深入学习QT5/C++:QML高级特性及音乐播放器项目实战;QML的MVC模式;QML的画布Canvas高级应用;QML的粒子模式;QML的着色器;QML访问数据库爽歪歪;QML的传统经典音乐播放器项目实战;QML的高仿酷狗音乐播放器项目实战。。2.所有章节均有理论知识介绍、接口讲解、实例代码讲解,讲解过程中不断穿插老师在开发过程中遇到的问题及解决方法(可以下载所有的电子课件与源码)。_qml播放音乐

随便推点

jvm的GC日志分析_jvm gc日志-程序员宅基地

文章浏览阅读1.9w次,点赞6次,收藏20次。JVM的GC日志的主要参数包括如下几个:-XX:+PrintGC 输出GC日志-XX:+PrintGCDetails 输出GC的详细日志-XX:+PrintGCTimeStamps 输出GC的时间戳(以基准时间的形式)-XX:+PrintGCDateStamps 输出GC的时间戳(以日期的形式,如 2013-05-04T21:53:59.234+0800)-_jvm gc日志

软件过程模型(软件开发模型)-程序员宅基地

文章浏览阅读1.1w次,点赞24次,收藏150次。 文章目录   软件过程模型习惯上也称为软件开发模型,它是软件开发全部过程、活动和任务_软件过程模型

2023非常全的selenium面试题及答案,测试工程师没有碰到算我输-程序员宅基地

文章浏览阅读7.8k次,点赞10次,收藏70次。Selenium,是一个开源的框架,主要用于做HTML页面的UI自动化测试。不过,selenium IDE在去年官方已宣告放弃维护了。官网上放着一句话,selenium IDE is Dead。Selenium IDE是火狐浏览器的一个插件,是Selenium的一个可视化编辑界面,支持直接录制脚本,然后转成其它的语言的脚本执行。不过,录制的脚本,里面有很多的废代码,一般我都不用录制的,都是直接写脚本的,所以对我的影响,并不大。1 什么是Selenium?Selenium就是一套专门用于自动化Web浏览器的工_selenium面试题

【赠书福利】人工智能发展的三驾马车-程序员宅基地

文章浏览阅读1k次。提醒!文末有福利哟!说起今年的科技热词,非人工智能(AI)莫属了。“智能+”时代已经到来,那么人工智能是怎么逐步发展起来的呢?先来看看它在历史上经历过的三次浪潮:第一个..._人工智能 三驾马车

springboot通过mybatis-plus中的Interceptor自定义一个拦截器实现打印完整sql(包含值)日志的功能_mybatsiplus 拦截器日志-程序员宅基地

文章浏览阅读2.1w次,点赞14次,收藏46次。1、实现功能结果如下图所示,用红框框住的就是实现的打印功能,而下边带?号的是原始的:2、具体springboot+mybatis项目的搭建请看:spring-boot+mybatis搭建一个后端restfull服务:https://blog.csdn.net/sunxiaoju/article/details/109607322,此文就是在此基础上延伸出来的。3、要实现此功能需要加入如下依赖: <dependency> <groupI_mybatsiplus 拦截器日志