📅  最后修改于: 2023-12-03 15:10:50.871000             🧑  作者: Mango
在 Python 中,NumPy 是一个广泛使用的数值计算库。在处理大量的数据和进行科学计算时,NumPy 为 Python 开发者提供了极大的便利。在 NumPy 中,常常需要检查两个数组是否相等。本文将介绍如何使用 Python 和 NumPy 检查两个数组是否相等。
numpy.array_equal 函数用于检查两个数组的维度和元素是否完全相同。该函数返回一个布尔值,表示两个数组是否相等。以下是 numpy.array_equal 函数的语法:
numpy.array_equal(arr1, arr2)
使用 numpy.array_equal 函数检查两个数组是否相等的示例代码如下:
import numpy as np
arr1 = np.array([1, 2, 3])
arr2 = np.array([1, 2, 3])
arr3 = np.array([3, 2, 1])
# 检查 arr1 和 arr2 是否相等
print(np.array_equal(arr1, arr2)) # True
# 检查 arr1 和 arr3 是否相等
print(np.array_equal(arr1, arr3)) # False
numpy.allclose 函数用于检查两个数组之间的每个元素是否都在公差范围内相等。该函数返回一个布尔值,表示两个数组是否差不多相等。以下是 numpy.allclose 函数的语法:
numpy.allclose(arr1, arr2, rtol=1e-05, atol=1e-08, equal_nan=False)
使用 numpy.allclose 函数检查两个数组是否相等的示例代码如下:
import numpy as np
arr1 = np.array([1, 2, 3])
arr2 = np.array([1.01, 2.02, 3.03])
arr3 = np.array([3, 2, np.nan])
# 检查 arr1 和 arr2 是否差不多相等
print(np.allclose(arr1, arr2, rtol=0.05, atol=0.05)) # True
# 检查 arr1 和 arr3 是否差不多相等
print(np.allclose(arr1, arr3, rtol=0.05, atol=0.05, equal_nan=True)) # False
使用 numpy.array_equal 函数和 numpy.allclose 函数可以检查两个数组是否相等。numpy.array_equal 函数用于检查两个数组的维度和元素是否完全相同。numpy.allclose 函数用于检查两个数组之间的每个元素是否都在公差范围内相等。在使用这两个函数时,需要注意默认值和函数参数,按需选取。