Maison  >  Article  >  développement back-end  >  Comment remplacer efficacement les valeurs supérieures à un seuil dans les tableaux NumPy ?

Comment remplacer efficacement les valeurs supérieures à un seuil dans les tableaux NumPy ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-25 07:54:02896parcourir

How to Efficiently Replace Values Greater Than a Threshold in NumPy Arrays?

Comment remplacer des valeurs supérieures à un seuil dans les tableaux NumPy

En travaillant avec des tableaux NumPy, il peut y avoir des situations où vous devez modifier valeurs qui dépassent un certain seuil. Envisagez de remplacer toutes les valeurs supérieures à une valeur T = 255 par une valeur de remplacement x = 255.

Bien qu'une approche basée sur une boucle for puisse être utilisée, elle n'est pas optimale en raison de sa lente exécution. NumPy fournit une solution plus efficace en utilisant une indexation sophistiquée.

Pour remplacer toutes les valeurs supérieures à T à l'aide d'une indexation sophistiquée, utilisez simplement la syntaxe suivante :

<code class="python">arr[arr > T] = x</code>

Par exemple :

<code class="python">import numpy as np
arr = np.random.randint(256, size=(10, 10))
arr[arr > 255] = 255</code>

Cette opération modifiera les éléments du tableau 'arr' qui sont supérieurs à 255 à 255.

Les avantages de l'utilisation d'une indexation sophistiquée sont sa rapidité et sa concision. Il a été démontré que cette approche est nettement plus rapide que les méthodes basées sur des boucles, en particulier pour les grands tableaux.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn