Python NumPy库 常见基本用法总结(学习笔记)
NumPy(Numerical Python)是Python中一个重要的科学计算库,它提供了强大的数组操作和数值计算功能。NumPy的核心是ndarray对象,它是一个多维数组,可以用于存储和操作大量数据。下面总结了NumPy的一些常见基本用法,并附上相应的代码示例。
1. 导入NumPy库
在使用NumPy之前,我们需要先导入它。通常使用以下语句:
import numpy as np
2. 创建数组
NumPy提供了多种方法来创建数组:
2.1 从列表创建
a = np.array([1, 2, 3])
print(a) # 输出: [1 2 3]
2.2 使用全零或全一数组
zeros_array = np.zeros((2, 3)) # 2行3列的全零数组
ones_array = np.ones((2, 3)) # 2行3列的全一数组
print(zeros_array)
print(ones_array)
2.3 使用单位数组
identity_matrix = np.eye(3) # 3x3单位矩阵
print(identity_matrix)
2.4 使用范围生成数组
range_array = np.arange(0, 10, 2) # 从0到10,步长为2
print(range_array) # 输出: [0 2 4 6 8]
2.5 使用线性空间
linspace_array = np.linspace(0, 1, 5) # 在0到1之间均匀生成5个数
print(linspace_array) # 输出: [0. 0.25 0.5 0.75 1. ]
3. 数组属性
NumPy中的ndarray对象有一些重要的属性,如shape、dtype和ndim等。
array = np.array([[1, 2, 3], [4, 5, 6]])
print(array.shape) # 输出: (2, 3) - 表示数组的维度
print(array.dtype) # 输出: int64 - 表示数据类型
print(array.ndim) # 输出: 2 - 表示数组的维数
4. 数组运算
NumPy支持许多基本的数组运算,这些运算会在数组上逐元素应用。
4.1 数学运算
array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])
print(array1 + array2) # 输出: [5 7 9]
print(array1 * array2) # 输出: [4 10 18]
4.2 数组的单一操作
print(array1 ** 2) # 输出: [1 4 9] - 每个元素平方
5. 数组的索引和切片
NumPy数组支持多维索引和切片操作。
array_2d = np.array([[1, 2, 3], [4, 5, 6]])
print(array_2d[0, 1]) # 访问第一行第二列的元素,输出: 2
print(array_2d[:, 1]) # 访问所有行的第二列,输出: [2 5]
6. 数组的变形
使用reshape方法可以灵活地改变数组的形状。
array = np.arange(6)
reshaped_array = array.reshape((2, 3)) # 将一维数组重新形成为2行3列
print(reshaped_array)
7. 数组的连接与拆分
7.1 连接数组
array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])
concatenated_array = np.concatenate((array1, array2))
print(concatenated_array) # 输出: [1 2 3 4 5 6]
7.2 拆分数组
split_arrays = np.split(concatenated_array, 2) # 将数组拆分为2个部分
print(split_arrays) # 输出: [array([1, 2, 3]), array([4, 5, 6])]
8. 数组的统计函数
NumPy提供多种统计函数,可以方便地对数组进行求和、求平均等操作。
array = np.array([1, 2, 3, 4, 5])
print(np.sum(array)) # 输出: 15
print(np.mean(array)) # 输出: 3.0
print(np.max(array)) # 输出: 5
9. 文件操作
NumPy还支持将数组保存到文件和从文件读取数组。
9.1 保存数组到文件
np.save('array.npy', array) # 将数组保存为npy文件
9.2 从文件读取数组
loaded_array = np.load('array.npy') # 从npy文件加载数组
print(loaded_array)
总结
以上是Python NumPy库的一些基本用法总结。NumPy在科学计算中功能强大,是很多数据分析、机器学习和深度学习库的基础。在学习和使用NumPy的过程中,掌握其核心功能可以大大提高你的编程效率。希望这些笔记对学习和使用NumPy有所帮助。