[PYTHON] [Pour les débutants] Je veux obtenir l'index d'un élément qui satisfait une certaine expression conditionnelle

Contexte

Cela peut être normal pour un pythoniste professionnel, Il me faut du temps pour comprendre Si je pouvais le comprendre, j'ai été impressionné par sa force. .. .. Parce que. .. ..

ndarray [expression conditionnelle]

Déterminer si chaque élément satisfait ou non à la condition en tant que matrice, Le résultat True / False est généré sous forme de matrice de la même forme.

Exemple

arr = np.array([[0,1,2,3],[0,2,4,6]])
print(arr<3)
# [[ True  True  True False]
#  [ True  True False False]]

numpy.nonzero Il obtient l'index de l'élément non nul de la matrice et le produit sous la forme d'un tableau ndarray séparé x, y.


#Exemple de définition
arr_int = np.array([[3,5,0],[0,4,0]])
arr_bool = np.array([[True,True,False],[False,True, False]])

# np.Utilisation d'une valeur différente de zéro
nonzero_int_row, nonzero_int_column = np.nonzero(arr_int)
nonzero_bool_row, nonzero_bool_column = np.nonzero(arr_bool)

#Valeur de chaque variable
# row: array([0, 0, 1])
# column: array([0, 1, 1]))

Dans cet exemple, arr [0,0], arr [0,1], arr [1,1] ne sont pas 0, c'est donc le résultat.

Combiner!

arr = np.array([[0,1,2,3],[0,2,4,6]])
arr_bool = arr<3
nonzero_row, nonzero_column = np.nonzero(arr_bool)
# row: [0 0 0 1 1]
# column: [0 1 2 0 1]

commentaire

J'ai un commentaire! Cela signifie que np.where a la même fonction et est pratique! Pourquoi le site que je cherchais n'a-t-il pas utilisé cela ...

Recommended Posts

[Pour les débutants] Je veux obtenir l'index d'un élément qui satisfait une certaine expression conditionnelle
[Pour les débutants] Je souhaite expliquer le nombre d’apprentissage d’une manière facile à comprendre.
[Pour les débutants chez AtCoder] Parlez de la quantité de calcul que vous voulez connaître approximativement
L'histoire de l'adresse IPv6 que je souhaite conserver au minimum
Je veux ajouter du silence pendant 1 seconde au début d'un fichier wav
[Introduction à Python] Comment obtenir l'index des données avec l'instruction for
Je veux obtenir des informations sur le fonctionnement de Yahoo Route
Keras Je veux obtenir la sortie de n'importe quelle couche !!
Je veux créer un Dockerfile pour le moment.
Je veux obtenir le nom de la fonction / méthode en cours d'exécution
J'ai essayé d'obtenir l'index de la liste en utilisant la fonction énumérer
Technique Python pour ceux qui veulent se débarrasser des débutants
Une petite histoire addictive avec les permissions du répertoire spécifié par expdp (pour les débutants)
J'ai mesuré 6 méthodes pour obtenir l'indice de la valeur maximale (valeur minimale) de la liste
Je souhaite trier une liste dans l'ordre des autres listes
Je veux colorer une partie de la chaîne Excel avec Python
Je souhaite laisser une commande arbitraire dans l'historique des commandes de Shell
Python: je souhaite mesurer proprement le temps de traitement d'une fonction
Je veux obtenir le chemin du répertoire où le fichier en cours d'exécution est stocké.
Je souhaite créer une API qui retourne un modèle avec une relation récursive dans Django REST Framework
Je veux écrire un élément dans un fichier avec numpy et le vérifier.
J'ai créé une commande appdo pour exécuter des commandes dans le contexte de l'application
Je souhaite définir un cycle de vie dans la définition de tâche d'ECS
Je veux obtenir les données de League of Legends ③
Je veux obtenir les données de League of Legends ②
Je souhaite voir une liste de fichiers WebDAV dans le module Requêtes
Je souhaite créer une application WEB en utilisant les données de League of Legends ①
Obtenez le nombre de tweets liés à un certain mot-clé à l'aide de l'API Twitter
Je souhaite stocker les résultats de% time, %% time, etc. dans un objet (variable)
Script Python pour obtenir une liste d'exemples d'entrée pour le concours AtCoder
Je souhaite personnaliser l'apparence de zabbix
Je veux obtenir les données de League of Legends ①
Une bibliothèque pour la science des données "Je veux faire ça" sur le bloc-notes Jupyter
Après avoir frappé l'API Qiita avec Python pour obtenir une liste d'articles pour les débutants, nous visiterons les articles divins
[Python] Je souhaite utiliser uniquement l'index lors de la mise en boucle d'une liste avec une instruction for
Je souhaite prendre une capture d'écran du site sur Docker en utilisant n'importe quelle police
Je souhaite créer une base de données de déjeuners [EP1] Django pour la première fois
Je souhaite créer une base de données de déjeuner [EP1-4] Django pour la première fois
[Notes] ① Obtenez et enregistrez des tweets ~ Je veux identifier les tweets d'actualité qui seront diffusés ~
Je veux grep le résultat de l'exécution de strace
J'ai essayé le tutoriel MNIST de tensorflow pour les débutants.
Je veux bien comprendre les bases de Bokeh
Je souhaite installer un package de Php Redis
Python: obtenir une liste de méthodes pour un objet
Je souhaite augmenter la sécurité de la connexion SSH
J'ai créé un programme en Python qui change les données de 1 minute de FX en une heure arbitraire (1 heure, etc.)
J'ai créé un outil pour obtenir les liens de réponse d'OpenAI Gym en même temps
Obtenir la valeur d'une clé spécifique jusqu'à l'index spécifié de la liste de dictionnaires en Python
Je veux trouver l'intersection d'une courbe de Bézier et d'une ligne droite (méthode de découpage de Bézier)
Je souhaite produire une carte thermique magnifiquement personnalisée de la matrice de corrélation. édition matplotlib
[TensorFlow] Je souhaite maîtriser l'indexation pour Ragged Tensor
J'ai essayé d'obtenir les informations de localisation du bus Odakyu
Je veux déplacer le sélénium pour le moment [pour mac]
[Python] Je souhaite obtenir un ensemble commun entre numpy
Je veux démarrer beaucoup de processus à partir de python
Je souhaite utiliser uniquement le traitement de normalisation SudachiPy