Python学习笔记之NumPy基本操作(数组)

使用pip安装Numpy:

pip install numpy

导入NumPy包并起别名np:

import NumPy as np

数组

把 List 转换成数组:

np.array(List)    # 传入一个List

生成一维数组并初始化:

np.full(10, 0, dtype=int)    # 10个元素,初始值为0,数据类型int,默认float

生成二维数组并初始化:

np.full((4, 4), 0, dtype=int)    # 4*4的二维数组

对照数组a的结构生成一个新的数组并初始化:

np.full_like(a, 0)    # 初始值为0

生成随机数组:

np.random.random(n)    # 生成n个[0, 1)一维随机数组
np.random.random((m, n))    # 生成m*n个[0, 1)二维随机数组

范围取值生成数组:

np.arange(0, 10, 2)    # 与range()相似,0-10每两个取一个值
np.linspace(0, 5, 10)    # 0-5里面等间隔取10个数

生成单位矩阵:

np.eye(5)    # 5*5的单位矩阵

访问数组元素:

a[0][0]    # 访问数组a的元素
a[0, 0]    # 两种访问数组方式等价

数组切片:

a[:2, :2]    # 取数组a前两行,前两列

数组属性:

a.ndim    # 数组a的维度
a.shape    # 形状,每个维度的大小
a.size    # 总的元素个数
a.dtype    # 元素的数据类型

数组运算:

a+10    # 对数组a里的每一个元素+10,四则运算,一维或多维
np.add(a, 10)    # 等价于a+10,返回一个新的数组
np.sin(a)    # 对数组a里的每一个元素进行正弦运算,返回一个新的数组

数组统计运算:

np.sum(a, axis=0)    # 对数组a求和,axis=0对每一列求和,axis=1对每一行求和,不写axis时默认对所有能元素求和
np.max(a)    # 求数组a中的最大值,也可用axis指定每一行或每一列

数组比较:

a>3    # 对数组a里的每一个元素进行比较,返回ture/false

数组排序:

np.sort(a)    # 对数组a的每一行里的元素进行排序
a.sort()    # 对数组a的行根据每一行的第一个元素排序,传入axis=0同时对每一列上的元素排序

数组拼接:

np.concatenate([a, b], axis=0)    # axis=0按照行拼接,axis=1按照列拼接

猜你喜欢

转载自blog.csdn.net/qq_37509235/article/details/80536770