numpy常用操作

Numpy操作:

  • 数组的算术和逻辑运算
  • 傅里叶变换和图形操作
  • 与线性代数有关的操作,numpy拥有线性代数和随机数生成的内置函数。

为了提高运算效率,ndarry数组值的类型默认相同,创建时自动指定默认数据类型(内存占用大的)。

numpy方法

np.dtype

当前numpy数据的整体数据类型
np.itemsize np对象中每个元素的占用空间大小,单位字节
np.size 对象元素的总个数,np.shape=(3,5)则为15个
np.shape np的各个维度的大小,如(3,5)
np.ndim np的总维度,如2维
np.isnan(list) 筛选出nan值
np.mat 将python列表转换为ndarry对象
np.I 矩阵求逆
np.T 矩阵转秩
np.multiply(x,y) 矩阵x,y相乘
np.arange 同range
np.aragne(24).reshape((3,4)  
np.linspace(x,y,z) 等间距生成,x起始,y终止,z为步长
np.full([x,y],z)

生成x行y列都是z的数组

np.random.rand(x,y,z) 表示随机数的shape为x,y,z...,参数也可以为空,表示只生成一个随机数
np.random.randn(x,y) 生成正态分布随机数
np.random.randint(low,high,(shape)) 整数随机数
np.random.seed(s) 给一个随机数字固定
np.random.shuttle(a) 从数组a的最外轴进行随机洗牌

np.random.choice(a,size=None,

replace=False,p=数组a/np.sum(b))

从一维数组a中以概率p抽取元素,形成size形状新数组,replace表示是否可以重用元素,默认为False,p为抽取概率,本位置越高,抽取概率越高
np.sum(axis=None)

求和,axis=0表示为列求和,axis为1表示行求和

np.argsort() 返回经过排序以后的矩阵每个元素原始坐标位置
np.sort() 从小到大排序
-np.sort() 从大到小排序
np.mean(axis=None) 求均值
np.average() 加权平均,weights加权值,不设为等权重,例子[10, 5, 1],每列分别X10,X5,X1在/(10+5+1)
np.var() 方差,各数与平均数之差的平方的平均数
np.std() 标准差
np.min() 最小值

np.max()

最大值
np.argmin() 求数组中最小值的坐标
np.median() 中位数
np.cusum() 累加
np.cumprod() 累乘
np.count_nonzero(arr>0) 计算数组中非零值个数

numpy中提取数据的话可以用[1][0][0]或者[1,0,0]都可以。

Numpy一元函数

运算时足以原数组是否被改变,几乎所有的一元函数都是生成新数组。

abs(),fabs(),sqrt(),square(),log(),log10(),ceil(),floor(),modf(),exp(),sign()

Numpy数组操作

np.transpose() 翻转给定数组的维度
np.T 类似于transpose
np.concatenate() 沿着指定轴向链接相同形状的两个或多个数组
np.stack() 沿着某个轴轴连接数组
np.split() 沿特定的轴将数组分割为子数组
np.dot 两个数组的点积
np.vdot 两个向量的点积
np.inner 两个数组的内积
np.matmul 两个数组的矩阵积

np.solve

np.inv

np.derteminant

求解线性矩阵方程

寻找矩阵乘法逆矩阵

数组的行列式

原文地址:https://www.cnblogs.com/pythonlearing/p/9812683.html