numpy库为python提供了高性能数组与矩阵运算能力。
数组的创建、数组的属性、数组变换以及随机生成函数等
1、创建数组
创建数组函数整理:
函数 | 使用说明 |
---|---|
arange | 类似于内置range函数,用于创建数组 |
ones | 创建指定长度或形状得全1数组 |
ones_like | 以另一个数组为参考,根据其形状和dtype创建全1数组 |
zeros | 创建指定长度或形状得全0数组 |
zeros_like | 以另一个数组为参考,根据其形状和dtype创建全0数组 |
empty | 创建指定长度或形状的没有具体值的数组 |
empty_like | 以另一个数组为参考,根据其形状和dtype创建没有具体值的数组 |
array | 最常用函数,将输入数据转换为ndarray |
eye,identity | 创建正方形NxN单位矩阵(对角线为1,其余为0) |
通过array函数创建ndarray单/多维数组
通过zeros/zeros_like函数创建指定长度或者形状的全0数组
通过ones/ones_like函数创建指定长度或者形状的全1数组
通过empty/empty_like函数没有具体值的数组
通过arange函数创建数组
通过eye,identity函数创建单位矩阵
2、ndarray数组属性
属性 | 使用说名明 |
---|---|
shape | 数组的维度 |
size | 数组元素的总个数 |
dtype | 数据类型 |
itemsize | 数组中每个元素的字节大小 |
ndim | 秩,数据轴的个数 |
举例查看一个数组各个属性值
3、数组变换
ndarray数据类型转换
可通过astype方法进行数据类型转换
备注:astype方法会创建一个新的数组并不会改变原来数组的数据类型
数组变换——数组重组
通过reshape方法可以改变数组维度
数组变换——数组合并
concatenate方法通过指定轴方向,将多个数组合并在一起
数组变换——数组拆分
通过split方法可以将数组拆分为多个数组
数组变换——数组转置和轴对换
通过transpose方法进行转置,数组有着T属性,可以用于转置
通过swapaxes方法用于轴对换
4、numpy随机数函数
numpy.random模块提供了多种随机数生成函数
函数 | 使用说明 |
---|---|
rand | 产生均匀分布的样本值 |
randint | 给定范围内取随机整数 |
randn | 产生平均数为0,标准差为1的正态分布样本值 |
seed | 随机数种子 |
permutation | 对一个序列随机排序,不改变原数组 |
shuffle | 对一个序列随机排序,改变原数组 |
uniform(low,high,size) | 产生具有均匀分布的数组,low:起始值,high:结束值,size:形状 |
normal(loc,scale,size) | 产生具有正态分布的数组,low:均值,scale:标准差 |
poisson(lam,size) | 产生具有泊松分布的数组,lam:随机事件发生率 |