選單
×
   ❮     
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 提供支援