1、数据构造

直接构造

np.array(列表)

创建等差数组

np.arange(开始值,结束值,间距,dtype=数据类型)

指定区间

np.linspace(起始值,终点值,数量)

产生随机数

np.random.random(维度)

全零矩阵

np.zeros(维度)

注:matrix(矩阵)和ndarray(数组)的区别:

matrix对象的shape只能是二维的,而ndarray对象的shape可以是多维度的。

从array()函数到mat()函数用np.asmatrix()或np.mat()

从mat()函数到array()函数用np.asarray()

numpy库常用的函数

2、常用运算

array

点成*(各个矩阵对应元素做乘法)  A*B

矩阵乘  np.dot(A,B)

matrix

*:矩阵乘法

multiply():逐元素乘法

注:array类型和matrix类型对相同的运算使用的函数不同

最值的计算

a.min(axis=0/1)  axis=1按行,axis=0按列,axis无求整个矩阵的最值

求和的计算

a.sum()

修改形状

a=np.arange(0,60,5)  a.reshape(4,-1)

转置

a.T

展开

a.flatten(order=””)  #order=’C'按行,'F'按列,'A'原顺序

增加维度

np.newaxis:A[np.newaxis, np.newaxis, :].shape

去除长度为1的维度

A.squeeze()

矩阵广播

数组形状不同时

等值判断

A==1 判断A中各元素与1是否相等

对矩阵所有元素做与操作,所有为True则返回True

np.all(A)

    numpy库常用的函数numpy库常用的函数

3、扩展

累加前几项的和

np.add.accumulate(a)   #a的数据类型可为数值也可为字符串

与前面做逻辑运算

a = np.array([1,1,0,1])    np.logical_and.accumulate(a)

条件筛选

np.choose的用法A=np.array([[1,0,1],[2,1,0],[1,2,2]])

#把数组中0,1,2替换为10,11,12:np.choose(A, [10, 11, 12])

#替换为true,False:choices = [True, False]   np.choose(a, choices)

#下面的例子将数组中所有小于 2的值变成10:np.choose(A < 2, (A, 10))

#控制在一个范围内:

numpy库常用的函数

连接矩阵

np.vstack((A,B))

np.hstack((A,B))

np.dstack((A,B))

拆分矩阵

np.hsplit(a,3)    #按水平轴分成三份

np.vsplit(a,2)    #按垂直轴分成两份

控制在上下限范围内

小于3的变3,大于4的变5:a.clip(3,4)

近似值

近似到小数点后一位:a.round(decimals=1)

索引的使用

非零元素的索引:np.where(A)

满足条件的索引:np.where(A>4)

获取满足条件的值

大于3的值:A[A>3]

索引为s(列表)的值:A[s]

根据布尔列表求值:Bool=np.array([1,0,0,0,1,1,0],dtype=bool)    A[Bool]

 

已排好序的列表新加一些数后排序

#searchsorted 接受两个参数,其中,第一个必需是已排序的数组。

#返回值对应插入的位置

sorted_array = linspace(0,1,5)

values = array([.1,.8,.3,.12,.5,.25])

searchsorted(sorted_array, values)

numpy库常用的函数

numpy库常用的函数numpy库常用的函数numpy库常用的函数

4、文件交互txt文件:

读取:data = np.loadtxt('myfile.txt')

写入:np.savetxt(“test.txt”)

numpy库常用的函数

相关文章:

  • 2022-12-23
  • 2021-08-25
  • 2021-04-19
  • 2022-12-23
  • 2021-11-19
  • 2021-06-06
猜你喜欢
  • 2021-10-27
  • 2022-12-23
  • 2021-07-03
  • 2021-06-18
相关资源
相似解决方案