【深度之眼六——(1)】Python:Numpy库

目录

一,为什么要用numpy库

1.1低效的for循环

1.2为何np如此高效

 1.3 什么时候用np

 二,np数组的创建

2.1 从列表开始创建

 2.2 从头开始创建数组

三,np数组的性质

3.1数组的属性

 3.2 数组的索引

 3.2.1一维的索引

 3.2.2 二维的索引

 3.3 数组的切片

 二维数组

​编辑

 修改切片的安全方式 .copy

 3.4数组的变形

转行向量

 转列向量

多维转一维

 3.5数组的拼接

水平

 垂直

 3.6数组的分裂

3.6.1 split

四,numpy的四大运算

 4.1向量化运算

4.1.1 与数字的加减乘除

 4.1.2 绝对值

 4.1.3 三角函数

 4.1.4 指数运算

 4.1.5对数运算

 4.1.5 两个数组的运算

 4.2 矩阵运算

4.2.1 矩阵的转置

 4.2.2 矩阵的乘法

 4.3 广播运算

 4.4 比较运算和掩码

 4.4.1 比较运算

 4.4.2 操作布尔数组

 4.4.3 将布尔数组作为掩码

 4.5 花哨的索引

4.5.1 一堆数组

 4.5.2 多维数组

 5 其他numpy通用函数

 5.1 数值的排序

5.2最大最小值

 5.3数值的求和与求积

 5.4 中位数,均值,方差,标准差

 知识回顾


本章导读

一,为什么要用numpy库

1.1低效的for循环

%timeit:ipython中统计运行时间的魔术方法(多次运行取平均值)

1.2为何np如此高效

 

 1.3 什么时候用np

 二,np数组的创建

2.1 从列表开始创建

 

 

 2.2 从头开始创建数组

 

 

 linspace是在0~1中取4个数

logspace是在10^0与10^9中取10个数,没有额外说明默认为10的几次方

在base中添加=2 则为2^0和2^10次方之间取10个等比数列

 

 

 

 

三,np数组的性质

3.1数组的属性

 

 

 3.2 数组的索引

 3.2.1一维的索引

 3.2.2 二维的索引

 

 

x的第一个变成1的整形

 3.3 数组的切片

 二维数组

 

 实现了行的反向输出和列的反向输出

 

 

 修改切片的安全方式 .copy

 

 3.4数组的变形

 

转行向量

 

 

 转列向量

 

多维转一维

 

 

 

 3.5数组的拼接

 

水平

 

 

 垂直

 3.6数组的分裂

3.6.1 split

 

 

四,numpy的四大运算

 4.1向量化运算

4.1.1 与数字的加减乘除

 

 

 4.1.2 绝对值

 

 4.1.3 三角函数

 

 

 4.1.4 指数运算

 4.1.5对数运算

 第一个是以e为底进行的运算

 4.1.5 两个数组的运算

 

 4.2 矩阵运算

4.2.1 矩阵的转置

 

 4.2.2 矩阵的乘法

 

 前面两个是x*y,后面两个是y*x,在后面处理数据有极大的好处

 注意与直接写x*y的区别

 

 这个是实现矩阵对应位置的乘法,不是矩阵的乘法

 4.3 广播运算

 

 如何实现的:

 如果俩个数组的形状在维度上不匹配

那么数组的形式会沿着维度为1 的维度进行拓展以匹配另外一个数组的形状

 

 

 4.4 比较运算和掩码

 4.4.1 比较运算

 

 会得到一个bool数组,每个元素的值与之前数组的值相关

 4.4.2 操作布尔数组

 

 用来判断是否所有元素都大于0

 用来判断是否至少有个元素等于6

 判断是否每行的元素都小于9

                                                                                如果判断每列的话就写axis=0

 

 4.4.3 将布尔数组作为掩码

掩码是一串二进制代码对目标字段进行位与运算,屏蔽当前的输入位。

 

 当我们获得x>5这样的一个数组后,我们把它当作一个掩码作为一个索引,我们发现所有大于5的数据全都提出来了,也就是相应位置为真的取出来,为假的就不取出来

 4.5 花哨的索引

4.5.1 一堆数组

 

 4.5.2 多维数组

 

 5 其他numpy通用函数

 5.1 数值的排序

 

 

 排序索引是排序的位置索引,排序的元素在原始数组的位置信息

最小的是第5个,最大的是第7个

5.2最大最小值

 

 5.3数值的求和与求积

 

 

 

 5.4 中位数,均值,方差,标准差

 

 

 

 知识回顾

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值