NumPy(Numerical Python)是用于科学计算的一个强大的数学库,提供了大量的数学、逻辑、数组操作等功能。以下是 NumPy 中常用的几种计算方法:
1、数组的创建:??
np.array()
: 从 Python 列表或元组创建数组。np.zeros()
: 创建全零数组。np.ones()
: 创建全一数组。np.arange()
: 创建等差数组。np.linspace()
: 创建指定范围内的等间隔数组。import numpy as np
# 示例数组的创建
arr1 = np.array([1, 2, 3])
arr2 = np.zeros((2, 3))
arr3 = np.ones((2, 2))
arr4 = np.arange(0, 10, 2)
arr5 = np.linspace(0, 1, 5)
print("示例数组的创建:")
print("arr1:\n", arr1)
print("arr2:\n", arr2)
print("arr3:\n", arr3)
print("arr4:\n", arr4)
print("arr5:\n", arr5)
示例数组的创建:
arr1:
[1 2 3]
arr2:
[[0. 0. 0.]
[0. 0. 0.]]
arr3:
[[1. 1.]
[1. 1.]]
arr4:
[0 2 4 6 8]
arr5:
[0. 0.25 0.5 0.75 1. ]
2、数组的基本操作:
shape
属性、reshape()
函数。np.sin()
, np.cos()
, np.exp()
, np.sqrt()
等。# 示例数组的基本操作
arr = np.array([[1, 2, 3], [4, 5, 6]])
print("\n示例数组的基本操作:")
print("arr[0, 1]:", arr[0, 1]) # 索引
print("arr[:, 1:]:\n", arr[:, 1:]) # 切片
print("arr.shape:", arr.shape) # 形状
print("arr.reshape(3, 2):\n", arr.reshape(3, 2)) # 重新形状
print("arr + 1:\n", arr + 1) # 加法
print("np.sin(arr):\n", np.sin(arr)) # 数学函数
示例数组的基本操作:
arr[0, 1]: 2
arr[:, 1:]:
[[2 3]
[5 6]]
arr.shape: (2, 3)
arr.reshape(3, 2):
[[1 2]
[3 4]
[5 6]]
arr + 1:
[[2 3 4]
[5 6 7]]
np.sin(arr):
[[ 0.84147098 0.90929743 0.14112001]
[-0.7568025 -0.95892427 -0.2794155 ]]
3、数组统计和聚合操作:
np.sum()
: 计算数组元素的和。np.mean()
: 计算数组元素的平均值。np.median()
: 计算数组元素的中位数。np.std()
: 计算数组元素的标准差。np.max()
, np.min()
: 计算数组元素的最大值和最小值。# 示例数组的统计和聚合操作
arr = np.array([[1, 2, 3], [4, 5, 6]])
print("\n示例数组的统计和聚合操作:")
print("np.sum(arr):", np.sum(arr)) # 计算数组元素的和
print("np.mean(arr):", np.mean(arr)) # 计算数组元素的平均值
print("np.median(arr):", np.median(arr)) # 计算数组元素的中位数
print("np.std(arr):", np.std(arr)) # 计算数组元素的标准差
print("np.max(arr):", np.max(arr)) # 计算数组元素的最大值
print("np.min(arr):", np.min(arr)) # 计算数组元素的最小值
示例数组的统计和聚合操作:
np.sum(arr): 21
np.mean(arr): 3.5
np.median(arr): 3.5
np.std(arr): 1.707825127659933
np.max(arr): 6
np.min(arr): 1
4、数组的逻辑运算:
np.logical_and()
, np.logical_or()
, np.logical_not()
: 逻辑与、或、非运算。np.all()
, np.any()
: 判断是否所有元素为真或是否有任意元素为真。# 示例数组的逻辑运算
print("\n示例数组的逻辑运算:")
arr_logical = np.array([True, False, True])
result_and = np.logical_and(arr_logical, arr_logical)
result_or = np.logical_or(arr_logical, arr_logical)
result_not = np.logical_not(arr_logical)
print("result_and:", result_and)
print("result_or:", result_or)
print("result_not:", result_not)
print("np.all(arr_logical):", np.all(arr_logical)) # 判断是否所有元素为真
print("np.any(arr_logical):", np.any(arr_logical)) # 判断是否有任意元素为真
示例数组的逻辑运算:
result_and: [ True False True]
result_or: [ True False True]
result_not: [False True False]
np.all(arr_logical): False
np.any(arr_logical): True
5、更多信息:
NumPy的官方网址: NumPy
??????????????? 中文版本:NumPy 中文文档