numpy笔记
python list的特点
1,特点:对list中元素的类型不做限定,所以存储的元素比较灵活,缺点是要依次检查元素类型,所以效率较慢
python array的特点
如果希望限定元素的类型,可以使用array,array一旦制定类型不允许赋值其他类型的元素,但由于不需要做类型检查,执行效率高
缺点是生成的是一个标量,不支持向量和矩阵操作
import array
arr1=array.array("i",[1,2,3,4,5,6])
arr2=array.array('i',[i for i in range(10)])
numpy array的特点
1,跟python array相同,只能存储固定类型,但其支持向量和矩阵操作
2,其他numpy array的生成方法
np.zeros
- 如果不指定dtype,默认生成的是浮点数
- 参数名shape和的dtype可省略,但当显式的写出了参数名时,参数顺序可换,否则不可换
np.ones
np.full:
- 填充任意数,参数名参数名shape和的fill_value可省略,但当显式的写出了参数名时,参数顺序可换,否则不可换
np.arange 的使用
与python中的range使用方法相同,左闭右开
np.arange(0,20,2)生成【0,20】间隔为2的向量
np.linspace:左闭右闭,最后一个数是生成的元素个数
np.random:生成左闭右开的随机数
np.random.randint生成随机整数
随机种子np.random.seed(666)
np.random.random随机生成(0,1)之间均匀分布的浮点数
np.random.normal() 均值方差的正态分布
numpy.random.uniform()介绍:
函数原型:
numpy.random.uniform(low,high,size)
功能:
从一个均匀分布[low,high)中随机采样,注意定义域是左闭右开,即包含low,不包含high.
参数介绍:
low: 采样下界,float类型,默认值为0;high: 采样上界,float类型,默认值为1;size: 输出样本数目,为int或元组(tuple)类型,例如,size=(m,n,k), 则输出 m * n * k 个样本,缺省时输出1个值。返回值:ndarray类型,其形状和参数size中描述一致。
jupyter文档查看
基本操作
基本属性
numpy.array的数据访问:切片
创建独立的子矩阵:copy()
reshape
numpy数组的合并与分割
首先生成连个一维向量
合并一维向量
合并二维向量:分别按行和列(axis)
合并二维向量和一维向量(首先将一维向量reshape)
vstack和hstack:不想使用axis属性可以使用vstack和hstack
分割操作
分割一维数组向量