Science des données

Comment utiliser la fonction python NumPy where() avec plusieurs conditions

Comment utiliser la fonction python NumPy where() avec plusieurs conditions
La bibliothèque NumPy a de nombreuses fonctions pour créer le tableau en python. La fonction where () est l'une d'entre elles pour créer un tableau à partir d'un autre tableau NumPy basé sur une ou plusieurs conditions. Certaines opérations peuvent être effectuées au moment de la création du tableau en fonction de la condition en utilisant cette fonction. Il peut également être utilisé sans aucune expression conditionnelle. Comment cette fonction peut être utilisée avec plusieurs conditions en python est montré dans ce tutoriel.

Syntaxe:

numpy.où(condition,[x,y])

où la fonction () peut prendre deux arguments. Le premier argument est obligatoire et le deuxième argument est facultatif. Si la valeur du premier argument (état) est vrai, alors la sortie contiendra les éléments du tableau du tableau, X sinon du tableau, oui. Cette fonction renverra les valeurs d'index du tableau d'entrée si aucun argument facultatif n'est utilisé.

Utilisation de la fonction where() :

Différents types d'opérateurs booléens peuvent être utilisés pour définir la condition de cette fonction. Les utilisations de la fonction where a () avec plusieurs conditions sont présentées dans cette partie du didacticiel.

Exemple -1 : Utilisation de plusieurs conditions avec OU logique

L'exemple suivant montre l'utilisation de la fonction where() avec et sans l'argument optionnel. Ici, le OU logique a utilisé pour définir la condition. La première fonction where() s'est appliquée dans un tableau unidimensionnel qui renverra le tableau d'indices du tableau d'entrée où la condition renverra Vrai. La deuxième fonction where() appliquée dans deux tableaux unidimensionnels récupérera les valeurs du premier tableau lorsque la condition renverra True. Sinon, il récupérera les valeurs du deuxième tableau.

# Importer la bibliothèque NumPy
importer numpy en tant que np
# Créer un tableau en utilisant la liste
np_tableau1 = np.tableau([23, 11, 45, 43, 60, 18, 33, 71, 52, 38])
print("Les valeurs du tableau d'entrée :\n", np_array1)
# Créer un autre tableau basé sur les multiples conditions et un tableau
nouveau_tableau1 = np.où((np_array1 50))
# Imprimer le nouveau tableau
print("Les valeurs filtrées du tableau :\n", new_array1)
# Créer un tableau en utilisant des valeurs de plage
np_array2 = np.range (40, 50)
# Créer un autre tableau basé sur les conditions multiples et deux tableaux
nouveau_tableau2 = np.où((np_array1 60), np_array1, np_array2)
# Imprimer le nouveau tableau
print("Les valeurs filtrées du tableau :\n", new_array2)

Production:

La sortie suivante apparaîtra après l'exécution du script ci-dessus. Ici, la condition est revenue Vrai pour les valeurs 23,11,18,33 et 38 du premier tableau. L'état est revenu Faux pour les valeurs 45, 43, 60, 71 et 52. Ainsi, 42, 43, 44 et 48 ont été ajoutés à partir du deuxième tableau pour les valeurs 45, 43, 60 et 52. Ici, 71 est hors de portée.

Exemple -2 : Utilisation de plusieurs conditions avec un ET logique

L'exemple suivant montre comment la fonction () peut être utilisée avec les multiples conditions définies par logique et appliquées dans deux tableaux à une dimension. Ici, deux tableaux NumPy unidimensionnels ont été créés en utilisant la fonction rand(). Ces tableaux ont été utilisés dans la fonction where() avec les multiples conditions pour créer le nouveau tableau en fonction des conditions. La condition reviendra Vrai lorsque la valeur du premier tableau est inférieure à 40 et que la valeur du deuxième tableau est supérieure à 60. Le nouveau tableau a été imprimé plus tard.

# Importer la bibliothèque NumPy
importer numpy en tant que np
# Créer deux tableaux de valeurs aléatoires
np_tableau1 = np.Aléatoire.rand(10)*100
np_array2 = np.Aléatoire.rand(10)*100
# Imprimer les valeurs du tableau
print("\nLes valeurs du premier tableau :\n", np_array1)
print("\nLes valeurs du deuxième tableau :\n", np_array2)
# Créer un nouveau tableau basé sur les conditions
nouveau_tableau = np.où((np_array1 60), np_array1, np_array2)
# Imprimer le nouveau tableau
print("\nLes valeurs filtrées des deux tableaux :\n", new_array)

Production:

La sortie suivante apparaîtra après l'exécution du script ci-dessus. L'état est revenu Faux pour tous les éléments. Ainsi, le tableau renvoyé contient uniquement les valeurs du deuxième tableau.

Exemple-3 : Utilisation de plusieurs conditions dans le tableau multidimensionnel

L'exemple suivant montre comment la fonction () peut être utilisée avec les multiples conditions définies par la logique ET qui sera appliqué dans deux tableaux multidimensionnels. Ici, deux tableaux multidimensionnels ont été créés en utilisant des listes. Ensuite, ces fonctions se sont appliquées dans la fonction where() pour créer le nouveau tableau en fonction de la condition. La condition utilisée dans la fonction retournera Vrai où la valeur du premier tableau est paire et la valeur du deuxième tableau est impaire ; sinon, la condition reviendra Faux.

# Importer la bibliothèque NumPy
importer numpy en tant que np
# Créer deux tableaux multidimensionnels de valeurs entières
np_tableau1 = np.tableau([[5, 12, 21, 6, 11], [6, 10, 15, 31, 8]])
np_array2 = np.tableau([[43, 19, 7, 34, 9], [99, 22, 41, 5, 12]])
# Imprimer les valeurs du tableau
print("\nLes valeurs du premier tableau :\n", np_array1)
print("\nLes valeurs du deuxième tableau :\n", np_array2)
# Créer un nouveau tableau à partir de deux tableaux en fonction des conditions
nouveau_tableau = np.où(((np_array1 % 2 == 0) & (np_array2 % 2 == 1)), np_array1, np_array2)
# Imprimer le nouveau tableau
print("\nLes valeurs filtrées des deux tableaux :\n", new_array)

Production:

La sortie suivante apparaîtra après l'exécution du script ci-dessus. Dans la sortie, 43, 12, 7, 34, 9, 22, 41, 5 et 12 ont été ajoutés dans le nouveau tableau à partir du deuxième tableau car la condition est Faux pour ces valeurs. Les 12 premières valeurs du nouveau tableau ont été ajoutées à partir du premier tableau car la condition est Vrai pour cette valeur seulement.

Conclusion:

où la fonction () de la bibliothèque NumPy est utile pour filtrer les valeurs de deux tableaux. La création d'un nouveau tableau en filtrant les données de deux tableaux en fonction de plusieurs conditions définies par OU logique et ET logique a été expliquée dans ce tutoriel. J'espère que les lecteurs pourront utiliser correctement cette fonction dans leur script après avoir pratiqué les exemples de ce tutoriel.

Installez le dernier émulateur Dolphin pour Gamecube et Wii sur Linux
L'émulateur Dolphin vous permet de jouer aux jeux Gamecube et Wii de votre choix sur des ordinateurs personnels Linux (PC). Étant un émulateur de jeu...
Comment utiliser le moteur de triche GameConqueror sous Linux
L'article couvre un guide sur l'utilisation du moteur de triche GameConqueror sous Linux. De nombreux utilisateurs qui jouent à des jeux sur Windows u...
Meilleurs émulateurs de console de jeu pour Linux
Cet article répertorie les logiciels d'émulation de console de jeu populaires disponibles pour Linux. L'émulation est une couche de compatibilité logi...