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_unique
qui, 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_unique
qui, 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_unique
qui, 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.