机器学习---matlab高等数学部分---基本程序元素

玩了N天之后终于又准备开始学习了,hhh
从这篇开始写一下机器学习中matlab的部分,首先是matlab中的基本程序元素
1.变量与常量
变量是任何程序设计语言的基本元素之一,它是指其数值在数据处理的过程中可能会发生变化的一些数据量名称,而常量则是指在计算过程中数值不发生变化的量。
MARTLAB语言的变量具有如下特点:
(1)不要求对所使用的变量进行事先声明,也不需要指定变量类型,MATLAB会自动根据所赋予变量的值或对变量所进行的操作来确定变量的类型
(2)在赋值过程中,如果变量已经存在,MATLAB会用新值代替旧值,并以新的变量类型代替旧的变量类型
变量的命名应遵循如下原则:
(1)变量名区分大小写
(2)变量名长度不超过N个,N与硬件有关,由函数namelengthmax返回
(3)变量名必须以字母开头,可包含字母(大小写)、数字和下划线
(4)关键字不能作为变量名,尽量避免使用函数名作为变量名
MATLAB中还有一些预定义的变量,这些变量即称为常量,如下所示:
在这里插入图片描述
2.关键字
通过“iskeyword”来判断
如:在这里插入图片描述
来判断一下“switch”是不是关键字
在这里插入图片描述
是的
3.运算符
运算符主要包括算术运算符、关系运算符和逻辑运算符
(1)算数运算符又分为两类:矩阵运算和数组运算。矩阵运算时按线性代数的规则进行运算,而数组运算时数组对应元素间的运算
(2)关系运算符时用来判断两个操作数关系的运算,参与关系运算的操作数可以使用各种数据类型的变量或者常数,运算的结果时逻辑类型的数据。标量也可以和矩阵或者数组进行比较,比较的时候先进行标量扩展,返回的结果是和数组同维的逻辑类型数组。如果进行比较的是两个数组,则数组必须是同维的,且每一维的尺寸也必须一致。MATLAB中的关系运算符和C语言的关系运算基本一致,主要有六种。
在这里插入图片描述
例如:
在这里插入图片描述
(3)MATLAB提供了两种类型的逻辑运算:元素运算和短路运算,如表所示:
在这里插入图片描述
说明:短路运算首先判断第1个运算对象,如果可以知道结果,则直接返回,而不继续判断第2个运算对象。短路运算提高了程序的运算效率,且可以避免一些不必要的错误,但短路运算只能对标量值执行逻辑与和逻辑或运算,例如:
在这里插入图片描述
没有报错,因为它只计算了前面b,如果我们修改一下
在这里插入图片描述
MATLAB还提供了一些与逻辑运算相关的函数,如:
在这里插入图片描述
4.优先级
在包含前面介绍的运算符的表达式中,运算顺序按优先级进行。优先级高的先执行,优先级低的后执行。运算符按优先级从高到底排列如下:
在这里插入图片描述
5.数据类型
MATLAB有很多数据类型,如:
在这里插入图片描述
数值型数据包括无符号和带符号整数、单精度和双精度浮点数。MATLAB默认将所有数值存为双精度浮点数(double型),但整数和单精度数值更节省内存空间。
(1)整型数据
MATLAB提供了四种有符号整型和无符号整型数据类型。带符号整数可表示为负整数、0和正整数,最高位为符号位,而无符号整数只能表示0和正整数。它们表示的数值范围一样大,只是对范围进行了“平移”。整型数据及其表示范围如下:
在这里插入图片描述
在进行整型数据的算数运算时应注意以下几点:
(1)相同类型的整形数据之间的运算,结果为同类型的整数,不同的整数型数据之间不能进行运算
(2)整型数据可以和双精度标量进行数值运算,结果为整数,在运算过程中保持浮点运算精度,最后将结果转换成整型。但整型数据不能与非标量双精度数组进行运算。
在这里插入图片描述
在这里插入图片描述
MATLAB提供了几个与整型数据相关的操作函数,如:
在这里插入图片描述
mod和rem函数的调用格式完全相同,均为R=fname(X,Y)(其中,fname是mod和rem的统称),而且当X个Y符号相同时,两者的结果是一样的,但它们也有如下两点不同:
(1)当Y=0时,mod(X,Y)=X,而rem(X,Y)=NaN
(2)当Y=0且X~=Y时,mod(X,Y)和Y是同号的,而rem(X,Y)和X是同号的
(2)浮点型数据
浮点型数据包括单精度(single)和双精度(double)两种格式,默认是double格式。两种格式之间可进行强制转换。double型数据共64位,single型数据共32位,这两种数据的位存储格式见如下:
在这里插入图片描述
在这里插入图片描述

对于给定的浮点数,以double为例,我们可以根据如下计算公式确定各位上的数值:
在这里插入图片描述
(3)复数
复数是MATLAB的基本运算单位,其代数形式可以写为 z = a + b i z=a+bi z=a+bi,其中a称位实部,b称位虚部, i = ( − 1 ) 1 / 2 i=(-1)^{1/2} i=(1)1/2是基本虚数单位,在MATLAB中也可以用j表示基本虚数单位
MATLAB中常用的构造复数的方法主要有两种:直接生成和用函数complex生成
(1)直接生成:例如 z = 1 + i z=1+i z=1+i
(2)用函数commplex生成,例如: z = c o m p l e x ( − 1 , 1 ) z=complex(-1,1) z=complex(1,1)
利用直接生成法不能生成虚部为0的复数,要生成虚部为0的复数只能采用complex函数生成
ok,暂且先到这里

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值