菜单
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

NumPy 集合运算


什么是集合

集合在数学中是指一组唯一元素的集合。

集合用于涉及频繁的交集、并集和差集运算的场景。


在 NumPy 中创建集合

我们可以使用 NumPy 的 unique() 方法来查找任何数组中的唯一元素。例如,创建一个集合数组,但请记住,集合数组只能是 1-D 数组。

示例

将以下包含重复元素的数组转换为集合

import numpy as np

arr = np.array([1, 1, 1, 2, 3, 4, 5, 5, 6, 7])

x = np.unique(arr)

print(x)
自己动手试一试 »

查找并集

要查找两个数组中的唯一值,请使用 union1d() 方法。

示例

查找以下两个集合数组的并集

import numpy as np

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

newarr = np.union1d(arr1, arr2)

print(newarr)
自己动手试一试 »

查找交集

要仅查找两个数组中都存在的数值,请使用 intersect1d() 方法。

示例

查找以下两个集合数组的交集

import numpy as np

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

newarr = np.intersect1d(arr1, arr2, assume_unique=True)

print(newarr)
自己动手试一试 »

注意: intersect1d() 方法带有一个可选参数 assume_unique,如果设置为 True,可以加快计算速度。在使用集合时,应始终将其设置为 True。


查找差集

要仅查找第一个集合中不存在于第二个集合的数值,请使用 setdiff1d() 方法。

示例

查找 set1 相对于 set2 的差集

import numpy as np

set1 = np.array([1, 2, 3, 4])
set2 = np.array([3, 4, 5, 6])

newarr = np.setdiff1d(set1, set2, assume_unique=True)

print(newarr)
自己动手试一试 »

注意: setdiff1d() 方法带有一个可选参数 assume_unique,如果设置为 True,可以加快计算速度。在使用集合时,应始终将其设置为 True。


查找对称差集

要仅查找同时不在两个集合中的数值,请使用 setxor1d() 方法。

示例

查找 set1 和 set2 的对称差集

import numpy as np

set1 = np.array([1, 2, 3, 4])
set2 = np.array([3, 4, 5, 6])

newarr = np.setxor1d(set1, set2, assume_unique=True)

print(newarr)
自己动手试一试 »

注意: setxor1d() 方法带有一个可选参数 assume_unique,如果设置为 True,可以加快计算速度。在使用集合时,应始终将其设置为 True。



×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持