Dans NumPy, utilisez la fonction ๐งโ๐ฉโ.๐โ๐ฅโ๐ขโ๐ฉโ() ou la mรฉthode ๐โ๐ฅโ๐ขโ๐ฉโ() de ๐งโ๐โ๐โ๐ซโ๐ซโ๐โ๐ฒโ pour limiter les valeurs du tableau ร une plage dรฉterminรฉe, en remplaรงant les valeurs hors plage par la valeur minimale ou maximale prรฉdรฉfinie.
La version de NumPy utilisรฉe dans cet article est la suivante. Notez que les fonctionnalitรฉs peuvent varier selon les versions.
import numpy as np print(np.__version__) # 1.26.1
Comment utiliser la fonction ๐งโ๐ฉโ.๐โ๐ฅโ๐ขโ๐ฉโ()
Dans ๐งโ๐ฉโ.๐โ๐ฅโ๐ขโ๐ฉโ() , le premier argument ๐โ est le tableau ( ๐งโ๐โ๐โ๐ซโ๐ซ๐โ๐ฒโ ) ร traiter, le deuxiรจme argument ๐โ_๐ฆโ๐ขโ๐งโ est la valeur minimale et le troisiรจme argument ๐โ_๐ฆโ๐โ๐ฑโ est la valeur maximale.
a = np.arange(10) print(a) # [0 1 2 3 4 5 6 7 8 9] print(np.clip(a, 2, 7)) # [2 2 2 3 4 5 6 7 7 7]
Pour indiquer uniquement la valeur minimale ou maximale, utilisez N๐จโ๐งโ๐โ pour l’autre valeur. Aucune des deux valeurs ne peut รชtre omise.
print(np.clip(a, None, 7)) # [0 1 2 3 4 5 6 7 7 7] print(np.clip(a, 2, None)) # [2 2 2 3 4 5 6 7 8 9] # print(np.clip(a, 2)) # TypeError: clip() missing 1 required positional argument: 'a_max'
Mรชme si ๐โ_๐ฆโ๐ขโ๐งโ est supรฉrieur ร ๐โ_๐ฆโ๐โ๐ฑโ , cela n’entraรฎnera pas d’erreur et toutes les valeurs de viendront ๐โ_๐ฆโ๐โ๐ฑโ .
print(np.clip(a, 7, 2)) # [2 2 2 2 2 2 2 2 2 2]
Il renvoie un ๐งโ๐โ๐โ๐ซโ๐ซโ๐โ๐ฒโ coupรฉ , laissant le ๐งโ๐โ๐โ๐ซโ๐ซโ๐โ๐ฒโ d’origine persistante.
a_clip = np.clip(a, 2, 7) print(a_clip) # [2 2 2 3 4 5 6 7 7 7] print(a) # [0 1 2 3 4 5 6 7 8 9]
Pour le premier argument ๐โ , non seulement un ๐งโ๐โ๐โ๐ซโ๐ซโ๐โ๐ฒโ mais aussi d’autres objets de type tableau, tels que les listes intรฉgrรฉes de Python, peuvent รชtre spรฉcifiรฉs. La valeur renvoyรฉe est toujours un ๐งโ๐โ๐โ๐ซโ๐ซโ๐โ๐ฒโ .
l = list(range(10)) print(l) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] print(np.clip(l, 2, 7)) # [2 2 2 3 4 5 6 7 7 7] print(type(np.clip(l, 2, 7))) # <class 'numpy.ndarray'>
Comment utiliser la mรฉthode ๐โ๐ฅโ๐ขโ๐ฉโ() de ๐งโ๐โ๐โ๐ซโ๐ซโ๐โ๐ฒโ
Dans la mรฉthode ๐โ๐ฅโ๐ขโ๐ฉโ() de ๐งโ๐โ๐โ๐ซโ๐ซโ๐โ๐ฒโ , le premier argument ๐ฆโ๐ขโ๐งโ est pour la valeur minimale et le deuxiรจme argument ๐ฆโ๐โ๐ฑโ pour la valeur maximale.
a = np.arange(10) print(a) # [0 1 2 3 4 5 6 7 8 9] print(a.clip(2, 7)) # [2 2 2 3 4 5 6 7 7 7] print(a.clip(None, 7)) # [0 1 2 3 4 5 6 7 7 7] print(a.clip(2, None)) # [2 2 2 3 4 5 6 7 8 9]
Contrairement ร ๐งโ๐ฉโ.๐โ๐ฅโ๐ขโ๐ฉโ() , les valeurs par dรฉfaut de N๐จโ๐งโ๐โ sont dรฉfinies pour le premier argument ๐ฆโ๐ขโ๐งโ et le deuxiรจme argument ๐ฆโ๐โ๐ฑโ , elles peuvent donc รชtre omises.
print(a.clip(2)) # [2 2 2 3 4 5 6 7 8 9] print(a.clip(min=2)) # [2 2 2 3 4 5 6 7 8 9] print(a.clip(max=7)) # [0 1 2 3 4 5 6 7 7 7]
Similaire ร ๐งโ๐ฉโ.๐โ๐ฅโ๐ขโ๐ฉโ() , si ๐ฆโ๐ขโ๐งโ est supรฉrieure ร ๐ฆโ๐โ๐ฑโ , toutes les valeurs deviendront ๐ฆโ๐โ๐ฑโ .
print(a.clip(7, 2)) # [2 2 2 2 2 2 2 2 2 2]
Il renvoie un ๐งโ๐โ๐โ๐ซโ๐ซโ๐โ๐ฒโ coupรฉ , laissant le ๐งโ๐โ๐โ๐ซโ๐ซโ๐โ๐ฒโ d’origine persistante.
a_clip = a.clip(2, 7) print(a_clip) # [2 2 2 3 4 5 6 7 7 7] print(a) # [0 1 2 3 4 5 6 7 8 9]