NumPy 是一个开源的Python科学计算基础库,是 SciPy 、 Pandas 等数据处理或科学计算库的基础
常用方法如下:
引用:
import numpy as np #np为引入模块的别名
N维数组对象:ndarray(数组一般要求所有元素类型相同)
a = np.array([1,2,3])
ndarray对象的属性:
import numpy as np
a = np.array([[1,2,3],[4,5,6]])
a.ndim
#out:2
a.shape
#out:(2,3)
a.size
#out:6
a.dtype
#out:dtype('int32')
可用列表、元组等类型创建ndarray数组,当 np.array()不指定 dtype 时, Numpy 将根据数据情况关联一个dtype 类型
x = np.array([0,1,2,3])
x = np.array((0,1,2,3))
x = np.array([[1,2],[3,4],(5,6)])
使用 NumPy 中函数创建 ndarray 数组,如: arange ,ones, zeros 等
np.arange(10)
#out:array([0,1,2,3,4,5,6,7,8,9])
np.ones((2,3))
#out:array([[1.,1.,1.],
[1.,1.,1.]])
np.zeros((2,3),dtype=np.int32)
#out:array([[1,1,1],
[1,1,1]])
np.eye(3)
#out:array([[1.,0.,0.],
[0.,1.,0.]
[0.,0.,1.]])
a = np.linspace(1,10,4)
#out:array([1.,4.,7.,10.])
a = np.linspace(1,10,4,endpoint=False) #不包括10,(10-1)/4 = 2.25
#out:array([1.,3.25,5.5,7.75])
c = np.concatenate((a,b))
#out:arrry([1.,4.,7.,10.,1.,3.25,5.5,7.75])
ndarray 数组的维度变换:
darray 数组的类型变换:
new_a = a.astype(dtype = new_type)
ndarray 数组向列表的转换:
ls = a.tolist()
数组的索引和切片(与python的列表类似):
索引:获取数组中特定位置元素的过程
切片:获取数组元素子集的过程
ndarray 数组的运算
数组与标量之间的运算作用于数组的每一个元素
a = np.array([1,2,3])
a + 1
#out:array([2,3,4])
广播( numpy两个数组的相加、相减以及相乘都是对应元素之间的操作):
Numpy的一元函数:
对 ndarray 中的数据执行元素级运算的函数:
NumPy 二元函数
Numpy的随机数函数
numpy的random子库
随机数种子相同,则产生的随机数也相同
生成服从特定分布的随机数组
Numpy的统计函数:
axis=0,则沿着纵轴进行操作,即按列求和,求平均等
axis=1,则沿着横轴进行操作,即按行求和,求平均等
argmax函数可带axis参数,若axis=1,表示按每行分别使用argmax函数,若axis=0,表示按每列分别使用argmax函数,若无axis参数,则对二维数组展开后计算下标值,如上图中34为二维数组中第十个元素(下标则为9)。