Opérations d'ensemble NumPy


Qu'est-ce qu'un ensemble

Un ensemble en mathématiques est une collection d'éléments uniques.

Les ensembles sont utilisés pour les opérations impliquant des opérations fréquentes d'intersection, d'union et de différence.


Créer des ensembles dans NumPy

Nous pouvons utiliser la méthode de NumPy unique()pour trouver des éléments uniques à partir de n'importe quel tableau. Par exemple, créez un tableau d'ensemble, mais rappelez-vous que les tableaux d'ensemble ne doivent être que des tableaux 1-D.

Exemple

Convertissez le tableau suivant avec des éléments répétés en un ensemble :

import numpy as np

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

x = np.unique(arr)

print(x)

Trouver l'union

Pour trouver les valeurs uniques de deux tableaux, utilisez la union1d()méthode.

Exemple

Trouver l'union des deux ensembles de tableaux suivants :

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)

Trouver l'intersection

Pour rechercher uniquement les valeurs présentes dans les deux tableaux, utilisez la intersect1d()méthode.

Exemple

Trouver l'intersection des deux ensembles de tableaux suivants :

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)

Remarque : la intersect1d()méthode prend un argument facultatif assume_uniquequi, s'il est défini sur True, peut accélérer le calcul. Il doit toujours être défini sur True lorsqu'il s'agit d'ensembles.


Trouver la différence

Pour rechercher uniquement les valeurs du premier ensemble qui ne sont PAS présentes dans l'ensemble des seconds, utilisez la setdiff1d()méthode .

Exemple

Trouvez la différence entre l'ensemble1 et l'ensemble2 :

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)

Remarque : la setdiff1d()méthode prend un argument facultatif assume_uniquequi, s'il est défini sur True, peut accélérer le calcul. Il doit toujours être défini sur True lorsqu'il s'agit d'ensembles.


Trouver une différence symétrique

Pour trouver uniquement les valeurs qui ne sont PAS présentes dans les DEUX ensembles, utilisez la setxor1d()méthode.

Exemple

Trouvez la différence symétrique de set1 et 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)

Remarque : la setxor1d()méthode prend un argument facultatif assume_uniquequi, s'il est défini sur True, peut accélérer le calcul. Il doit toujours être défini sur True lorsqu'il s'agit d'ensembles.