python3机器学习经典算法与应用之numpy

numpy

python的数据结构之一List(列表)非常灵活,其内部元素的数据类型可以不同,但是python需要检查每个元素的数据类型,效率相对较低
但是python内部也有规定只可以存储一种类型数据的array(数组)。需要先引入。
在这里插入图片描述
此时也可以像使用List一样访问元素和赋值,但是array限定赋值数据类型与数组内元素类型相同才可以。但是效率相对较高。然而仅仅是将存储在其中的数据当成数组或二维数组来看,但没有将数据看做是矩阵或者是向量,相应的也没有给数据配备矩阵或向量相关的运算操作。所以numpy.array应运而生。

numpy.array

numpy.array和array、List一样可以直接访问元素或者修改,但是加上了一些额外的操作。
在这里插入图片描述
使用dtype方法查看numpy.array数据类型,可以看出是整形
在这里插入图片描述

数据存储方式为浮点数,但是只接受整数部分的复制,所以nparr[3]=3.14报错
在这里插入图片描述
再创建一个nparr2,因为由浮点数存在,所以取最大精度的数据类型float64
在这里插入图片描述

numpy.array创建的其他方法

1.numpy.zeros()

创建一个0数组,括号内的参数可传递数组的元素个数(**长度**)

在这里插入图片描述
可以发现默认的数据类型为float64
在这里插入图片描述
也可以通过参数来指定array元素的数据类型
在这里插入图片描述
这里规定了数据类型为整形。

获取二维数组,可以将原有的数组长度换成一个元组,元组的两个元素对应两个维度的长度(下图为4行5列矩阵)
在这里插入图片描述
这个接受元组的参数名为shape,可以使用默认参数或位置参数的方式
在这里插入图片描述

2.numpy.ones()

顾名思义,获得全1的向量或者矩阵
在这里插入图片描述

3.numpy.full()

numpy.full()用于创建元素值为指定值的数组。可以指定shape参数为数组维度,fill_value是数组所有元素默认值。
在这里插入图片描述
使用full()方法不指定dtype,指定fill_value的值为整型,dtype默认为整型。指定fill_value的值为浮点型,dtype默认为浮点型。

4.arange

range(start,end,step),range()函数是python中用于生成数字数组的函数,在区间[start,end),从start开始逐步加step直到岛屿或等于end(不包括end)。step默认为1。
在这里插入图片描述
numpy.arange()函数和range()函数功能相似,但是range函数不支持传入step为浮点数,但是arange函数支持。
在这里插入图片描述

5.numpy.linspace()

numpy.linspace()和arange()函数的参数是一样的,但是作用不同。linspace()函数是按照最后一个参数step等长地截取[start,end],这里是包含start和end的。也就是说每两个元素之间的距离是等长的**【等差数组】**。
在这里插入图片描述

随机化random

1.numpy.random.randint()

产生在[start,end)区间内的随机数,永远取不到end。
在这里插入图片描述
如果只传入两个参数代表生成一个随机数,传入第三个参数代表生成一个向量,向量的元素值为前面两个参数限定的随机数。在这里插入图片描述
当传入三个参数时可以通过size指明传入的参数,size可以为整数或者元组。
在这里插入图片描述

2.numpy.random.seed

numpy.random.seed用于设置随机数种子,以避免生成伪随机数。可以发现当随机数种子seed相同时,产生的随机数相同。
在这里插入图片描述

3.numpy.random.random()

numpy.random.random()用于生成浮点随机数,不指定参数默认产生0到1之间的参数。通过指定size参数来设置生成矩阵的维度。在这里插入图片描述

4.numpy.random.normal()

numpy.random.normal()默认生成符合正态分布的浮点数(均值为0,方差为1)。也可以通过指定参数来生成指定均值和方差的浮点数。第一个参数为均值,第二个参数为方差。
在这里插入图片描述
同样,第三个参数为指定矩阵的size。
在这里插入图片描述

5.使用jupyter notebook查看函数描述(类似于官方文档)

可以通过在函数后面加一个的形式查询。注意:函数名后面直接加?,不要加(),否则会报错。
在这里插入图片描述
不仅仅局限于查询某个函数,也可以查询某个模块的文档。等同于help()方法,在help()函数内传递函数或者模块名就可以查询其文档。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值