numpy常用函数总结(不定时更新)

2019-11-11  本文已影响0人  tuimer

学习python一段时间,numpy,pandas,matplotlib等这些包同房在学,经常将他们的函数混淆,所以将之前学过的,和用到过的归类整理出来,整理知识

一、多维数组对象

1. 1numpy的多维数组ndarray

1.1.1 创建数组

一维数组:arr1 = np.array([1,2,3,4])
二维数组:arr2 = np.array([[1,2,3,4],[5,6,7,8]])
查看数组的维数:arr2.ndim
查看数组形状:arr2.shape
查看数组元素类型:arr2.dtype

1.1.2 其他创建数组方法:

np.zeros(10)
np.zeros((3,6))
np.empty((2,3,4)) #返回的是一些未初始化的垃圾值

1.1.3 函数

1.2. ndarry的数据类型

1.2.1 创建时指定dtype

arr1 = np.array([1, 2, 3,4], dtype = np.float)

1.2.2 使用astype()方法显式的转换dtype

float_arr = arr.astype(np.float64)
另一种方法:
arr1的数据类型为int, arr2的数据类型为float
将arr2的数据类型转换为和arr1一样:
arr2.astype(arr1.dtype)

1.3. 数组和标量之间的运算

1.3.1标量与数组的运算会传播到整个数组

1.4 索引和切片

1.4.1 基本索引和切片

  1. 一维数组

arr = np.arange(10)

  1. 二维数组

arr2d = np.array([[1,2,3], [4,5,6],[7,8,9]])

  1. 三维数组

1.4.2 切片索引

1.4.3 布尔索引

data 为一个多维数组
data[[布尔数组]]

1.4.3 花式索引

arr[[1,3,5]]

arr[[-3, -5, -7]]

arr[[1,3,5],[2,4,6]]

arr[[1,3,5]][:, [2,4,6]]

1.5 数组的转置和轴对换

1.5.1 转置 (返回的是源数据视图)

二维数组:arr.T#轴对换

高维数组:arr.transpose((1,0,2))

二、通用函数

2.1 一元函数

np.abs()
np.sqrt() # 平方根
np.square() #平方
......

2.2 二元函数

np.add() # 将数组对应元素相加
np.subtract() # 从第一个数组中减去第二个数组中的元素
......

三、利用数组进行数据处理

3.1 将条件逻辑表述为数据运算

np.where( cond, x, y)
等价于:x if condition else y
条件为1时返回x, 条件为0时返回y

3.2 数学和统计方法

3.3 用于布尔型数组的方法

布尔值会被转换位1,0 ,所以用sum()来对布尔型数组计数

3.4 排序

多维数组可以在任何一个轴上进行排序,只需将轴编号传给sort()

3.5 集合逻辑

四、用于数组的文件输入输出

np.save('文件名', arr) #将arr数组保存到磁盘上.npy文件
np.load('文件名.npy')
np.savez('file.npz', arr1, arr2)# 多个数组压缩保存到一个压缩文件中

五 线性代数

np.linalg中有一组标准的矩阵分解运算以及求逆、行列式等

六、随机数生成

np.random模块对python内置的random进行补充

上一篇 下一篇

猜你喜欢

热点阅读