什么是Numpy?
Numpy是Python中科学计算的基础包。它是一个Python库,提供多维数组对象,各种派生对象(如掩码数组和矩阵),以及用于数组快速操作的各种例程,包括数学,逻辑,形状操作,排序,选择,I / O离散傅立叶变换,基本线性代数,基本统计运算,随机模拟等等。
import numpy as np
# 操作数据
s = np.array([1, 2, 3]) # 创建序列
s1 = np.linspace(1, 3, 3) # 等差数列
array = np.array([[1, 2, 3],
[4, 5, 6]]) # 创建二维数组
array1 = np.arange(12).reshape(3, 4) # 生成[0, 12)的3行3列的矩阵
# 1、numpy的属性
print('数组的维度:', array.ndim)
print('几行几列:', array.shape)
print('元素的个数:', array.size)
# 2、numpy的基础操作
print('列的求和:', np.sum(array, axis=0)) # axis=0 逐行操作,往下梳头发的动作
print('行的求和:', np.sum(array, axis=1)) # axis=1 逐列操作,往右推箱子的动作
print('最大索引值:', np.argmax(array))
print('最小索引值:', np.argmin(array))
print('平均值:', np.mean(array, axis=0)) # 每一列的平均值
print('平均值:', np.average(array))
print('中位数:', np.median(array))
print('逐步累加:', np.cumsum(array))
print('两两相减:', np.diff(array))
print('排序:', np.sort(array))
print('矩阵反向:', np.transpose(array)) # array.T
print('数值控制:', np.clip(array, 2, 4)) # 小于2的数修改为2, 大于4的数修改为4
# 3、numpy的索引
print(array1)
print('打印数字1:', array1[0, 1])
print('打印第一行所有数字:', array1[1, :])
print('打印第二行数字9,10:', array1[2, 1:3])
for row in array1:
print(row) # 默认迭代每一行
for column in array1.T: # 矩阵反向,输出每一列
print(column)
for item in array1.flat:
print(item) # 返回每一个元素
# 4、numpy的合并与分割
print(s, s1)
# 合并
print('序列上下合并:', np.vstack((s, s1)))
print('序列作业合并:', np.hstack((s, s1)))
print('修改序列s的维度', s[:, np.newaxis])
# 分割
print(array)
print(np.split(array, 2, axis=0)) # 将array 分割成2部分,只能进行均等分割
print(np.array_split(array, 3, axis=0)) # 支持不均等分割
print(np.vsplit(array, 2)) # 对行进行分割
print(np.hsplit(array, 3)) # 对列进行分割
# 5、numpy的copy
print(array)
a2 = array
a3 = array.copy()
array[1, 1] = 100
print(a2) # 赋值,其中发生修改,彼此都会相应的修改
print(a3) # copy,不会跟着修改