numpy
numpy
0、作用
使用numpy&pandas使得数据分析中计算非常快,比python自带的字典和列表快很多,因为这俩模块使用C语言编写的。应用到了矩阵的运算,使用C语言实现,更快。
1、安装
直接在终端使用命令
1  |  | 
安装完成即可
2、numpy基本属性
基本属性包括:将列表转换为numpy的array,查看array的维度、形状、总元素个数
1  |  | 
3、创建
创建的方法有:
- 直接传入列表
 - 通过zeros()方法生成全为0的矩阵
 - 通过ones()方法生成全为1的矩阵
 - 通过empty()方法生成全为0的矩阵
 - 通过arange()方法生成有序array
 - 使用reshape指定形状,注意,元素个数可以变成指定的形状否则报错
 - linspace分段
 - 使用random模块,生成随机的。随机数位于0到1之间
 
1  |  | 
4、运算
- 加法、减法、指数运算、三角函数运算、布尔值运算。都是对每个元素都进行运算
 - 矩阵乘法
 - 逐个元素相乘
 - 使用dot方法矩阵相乘(线性代数的知识)
 
- 求和,求最大值最小值,都是返回一个指定的元素
 - 求指定维度的和、最大最小值,需要根据axis指定维度
 
1  |  | 
5、运算2
- 求最小最大值索引
 - 求平均值,指定维度求平均值
 - 求中位数
 - 累加,第n个元素为原矩阵前n个元素的和
 - 累差,原矩阵相邻元素之间的差值,列数减一
 - 找出非0的元素,返回的值是多个表示非零元素的维度数组,数组拼接即可得到非零元素的索引值
 - 排序,按照最小的维度排序,对于矩阵就是对行内的列元素排序
 - 转置矩阵
 
1  |  | 
6、索引
- 对于多维的索引,索引号都放在一个中括号中,用逗号分割开
 - 切片
 - for迭代,默认迭代矩阵的行
 
1  |  | 
7、array合并
- 使用vstack实现多个array上下合并
 - 使用hstack实现多个array水平合并
 - 把一个横向的数列变成纵向的数列
 - 使用concatenate多个array的合并指定合并的维度
 
1  |  | 
8、分割
- 使用split均等分割
 - 使用array_split不均等分割
 - 使用vsplit和hsplit进行均等分割
 
1  |  | 
9、copy和deep copy
- 通过 = 赋值的变量都指向同一个数据
 - 使用copy方法使复制后两个变量不相关联
 
1  |  | 
numpy
      https://zhaoyunlai.github.io/posts/927a0c3d4668/