查找两个NumPy数组的并集

  • Post category:Python

要查找两个NumPy数组的并集,首先需要将这两个数组合并为一个新的数组,然后去除其中的重复元素。以下是详细的攻略:

1. 使用np.union1d()函数查找两个数组的并集

import numpy as np

arr1 = np.array([1, 2, 3, 4])
arr2 = np.array([3, 4, 5, 6])
union = np.union1d(arr1, arr2)
print(union)

运行结果为:

[1 2 3 4 5 6]

使用np.union1d()函数会自动去除重复元素,返回新数组的元素也会自动排序。

2. 使用set()函数查找两个数组的并集

另一种方法是将两个数组转换为集合类型,然后使用set()函数查找两个集合的并集。

import numpy as np

arr1 = np.array([1, 2, 3, 4])
arr2 = np.array([3, 4, 5, 6])

union = set(list(arr1) + list(arr2))
print(union)

运行结果为:

{1, 2, 3, 4, 5, 6}

这种方法不需要使用NumPy库,但是需要将数组转换为列表类型和集合类型,效率不如使用np.union1d()函数。