python数据分析之numpy常用命令整理

numpy是高性能科学计算和数据分析的基础包。部分功能如下:

ndarray, 具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组。

用于对整组数据进行快速运算的标准数学函数(无需编写循环)。

用于读写磁盘数据的工具以及用于操作内存映射文件的工具。

线性代数、随机数生成以及傅里叶变换功能。

用于集成C、C++、Fortran等语言编写的代码的工具。

导入numpy库:import numpy as np

一、numpy常用函数

1.数组生成函数

np.array(x):将x转化为一个数组

np.array(x,dtype):将x转化为一个类型为type的数组

np.zeros(shape):生成shape维度大小的全0数组

np.zeros_like(a):生成与a各维度大小一致的全0数组

np.ones(shape):生成shape维度大小的全1数组

np.ones_like(a):生成与a各维度大小一致的全1数组

np.full(shape,val):生成shape维度大小的全val数组

np.full_like(a,val):生成与a各维度大小一致的全val数组

np.empty(shape):生成shape维度大小的未初始化数组

np.empty_like(a):与np.zeros_like(a)作用类似

np.eye(n):生成n×n的单位矩阵

np.identity(n):生成n×n的单位矩阵

np.arange(begin,end,step):生成一个从begin到end-step的步长为step的一维数组,其中begin(默认0),step(默认1)可省略

np.linspace(start,stop,num):生成一个含num个元素的等差数列,start为第一个元素,stop为最后一个元素

np.where(cond,a1,a2):根据条件cond,选取a1或者a2,返回一个新数组

2.矩阵函数:

np.diag(a):以一维数组的形式返回方阵a的对角线元素

np.diag(x):将输入数据x转化为方阵(非对角线元素为0)

np.dot(a,b):矩阵乘法

np.trace(a):计算对角线元素的和

3.排序函数:

np.sort(a):排序,返回a中的元素,不影响原数组。

np.argsort(a):升序排列,返回a的索引

np.unique(a):排除重复元素之后,升序排列,返回a中的元素

4.计算函数(元素级计算)

np.abs(a)、np.fabs(a):计算绝对值

np.mean(a):计算均值

np.sqrt(a):计算平方根

np.square(a):计算平方

np.exp(a):计算e^x

np.log(a):计算自然对数如:log10 log2 log1p

np.sign(a):计算正负号

np.ceil(ndarray):向上取整

np.floor(ndarray):向下取整

np.rint(ndarray):四舍五入

np.modf(ndarray):拆分整数和小数部分,返回两个数组组成的元组

np.cos/cosh/sin/sinh/tan/tanh(a):计算普通型和双曲型三角函数

np.arccos/arccosh/arcsin/arcsinh/arctan/arctanh(a):计算反三角函数和双曲型反三角函数

np.maximum(a,b)、np.fmax(a,b):计算最大值

np.minimun(a,b)、np.fmin(a,b):计算最小值

np.copysign(a,b):将b的正负号复制给a

np.logical_and(a,b):逻辑运算&,返回布尔数组

np.logical_or(a,b):逻辑运算|,返回布尔数组

np.logical_xor(a,b):逻辑运算^,返回布尔数组

5.数组重复函数

np.tile(a,reps):a是数组,reps是个list,reps的元素表示对A的各个axis进行重复的次数。

np.repeat(a,repeats,axis=None):a是数组,repeats是各个元素重复的次数(repeats一般是个标量,稍复杂点是个list),在axis的方向上进行重复,若不指定axis,则返回一维数组。

6.数组组合函数

水平组合:

np.hstack((a,b))、np.concatenate((a,b),axis=1)

垂直组合:

np.vstack((a,b))、np.concatenate((a,b),axis=0)

深度组合,沿着纵轴方向组合:np.dstack((a,b))

7.文件读写

np.save(string,a):将a保存到string.npy文件中

np.savez(string,a1,a2, ...):将所有的数组压缩保存到文件string.npy文件中

np.savetxt(sring,a,fmt,newline='\n'):将a写入文件,格式为fmt

np.load(string):读取文件string的文件内容并转化为数组对象(或字典对象)

np.loadtxt(string,delimiter):读取文件string的文件内容,以delimiter为分隔符转化为数组

二、numpy.ndarray的函数和属性

1.ndarray属性

.ndim:返回数组维数

.shape:返回数组各维度大小的元组

.dtype:说明数组元素数据类型的对象

.astype(dtype):转换类型

.T:简单矩阵转置

2.维数转换函数

.reshape((n,m,...)):将数组转化为n*m*...的多维数组。

.ravel()/.flatten():数组展平,将多维数组降为一维。

3.计算函数(axis=0:对列进行操作,axis=1:对行进行操作)

.mean():计算均值

.sum():求和

.cumsum():累加

.cumprod():累乘

.var():计算方差

.std():计算标准差

.max():求最大值

.min():求最小值

.argmax():最大值索引

.argmin():最小值索引

.any():是否至少一个True

.all():是否全部为True

.dot(b):计算矩阵内积

4.排序函数(axis=0:对列进行操作,axis=1:对行进行操作)

.sort():排序,返回源数据

.argsort():排序,返回数组索引

5.数组元素选取

a[n]:选取第n+1个元素

a[n:m]:选取第n+1到第m个元素

a[:]:选取全部元素

a[n:]:选取第n+1到最后一个元素

a[:m]:选取第1到第m个元素

a[布尔数组]:选取为true的元素

a[[x,y,m,n]]...:选取顺序和序列为x、y、m、n的数组

a[n,m]:选取第n+1行第m+1个元素

a[n][m]:选取第n+1行第m+1个元素

a[n,m,...]:选取n+1行m+1列....的元素(三维及三维以上数组)

a[n][m]...:选取n+1行m+1列....的元素(三维及三维以上数组)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20191023A02W0Y00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券