Numpy 数组操作
NumPy 是 Python 中用于科学计算的核心库之一,它提供了一个强大的 N 维数组对象和一系列用于处理这些数组的函数和算法。在本文中,我们将探讨 NumPy 数组的基本操作,包括创建、索引、切片、形状修改、数学运算和统计功能。
1. 创建 NumPy 数组
创建 NumPy 数组有多种方法,最常见的是使用 numpy.array
函数和 numpy.arange
函数。
import numpy as np
# 使用列表创建数组
arr1 = np.array([1, 2, 3, 4, 5])
# 使用arange创建数组
arr2 = np.arange(0, 10, 2)
2. 数组索引和切片
NumPy 数组的索引和切片与 Python 列表类似,但 NumPy 支持多维数组。
# 一维数组索引和切片
print(arr1[2]) # 输出第三个元素
print(arr1[1:4]) # 输出第二个到第四个元素
# 二维数组索引和切片
arr2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(arr2d[1, 2]) # 输出第二行第三列的元素
print(arr2d[0:2, 1]) # 输出第一和第二行的第二列元素
3. 形状修改
NumPy 提供了多种方法来修改数组的形状,如 reshape
、flatten
和 ravel
。
# 修改数组形状
arr_reshaped = arr1.reshape(5, 1)
print(arr_reshaped)
# 展平数组
arr_flattened = arr2d.flatten()
print(arr_flattened)
# 使用ravel展平数组
arr_raveled = arr2d.ravel()
print(arr_raveled)
4. 数学运算
NumPy 支持数组与标量、数组与数组的数学运算。
# 数组与标量运算
print(arr1 + 10)
# 数组与数组运算
print(arr1 * arr1)
5. 统计功能
NumPy 提供了多种统计函数,如 mean
、median
、std
等。
# 计算数组平均值
print(np.mean(arr1))
# 计算数组中位数
print(np.median(arr1))
# 计算数组标准差
print(np.std(arr1))
6. 聚合运算
NumPy 还支持聚合运算,如 sum
、min
、max
等。
# 计算数组总和
print(np.sum(arr1))
# 计算数组最小值
print(np.min(arr1))
# 计算数组最大值
print(np.max(arr1))
结论
NumPy 数组操作是 Python 数据分析和科学计算的基础。通过掌握这些基本操作,您可以更高效地处理数据,并进行复杂的计算。NumPy 的功能远不止于此,它还包括线性代数运算、傅里叶变换、随机数生成等高级功能,这些将在后续的文章中进一步探讨。