logo

numpy.clip() v Pythone

Na orezanie hodnôt v poli poskytuje numpy modul Pythonu funkciu s názvom numpy.clip() . Vo funkcii clip() prejdeme interval a hodnoty, ktoré sú mimo intervalu, budú orezané pre okraje intervalu.

Ak zadáme interval [1, 2], hodnoty menšie ako 1 sa stanú 1 a väčšie ako 2 sú 2. Táto funkcia je podobná ako numpy.maximum(x_min, numpy.maximum(x, x_max)) . Ale je to rýchlejšie ako np.maximum(). In numpy.clip() , nie je potrebné vykonávať kontrolu na zabezpečenie x_min.

Syntax:

 numpy.clip(a, a_min, a_max, out=None) 

Parametre:

x: pole_like

štvrťroky v roku

Tento parameter definuje zdrojové pole, ktorého prvky chceme orezať.

x_min: Žiadne, skalárne alebo pole

Tento parameter definuje minimálnu hodnotu pre hodnoty orezania. Na spodnom okraji intervalu nie je potrebné orezávanie.

x_max: Žiadne, skalárne alebo pole

bash dĺžka struny

Tento parameter definuje maximálnu hodnotu pre hodnoty orezania. Na hornom okraji intervalu nie je potrebné orezávanie. Tieto tri polia sa vysielajú, aby sa ich tvary zhodovali s poliami x_min a x_max. Toto sa vykoná iba vtedy, keď sú x_min a x_max podobné ako pole.

výstup: ndaaray (voliteľné)

Tento parameter definuje ndarray, v ktorom bude uložený výsledok. Pre orezanie na mieste to môže byť vstupné pole. Dátový typ týchto „out“ polí má správny tvar na držanie výstupu.

Návraty

clip_arr: ndarray

Táto funkcia vráti pole, ktoré obsahuje prvky 'x', ale hodnoty, ktoré sú menšie ako x_min, sú nahradené x_min a tie, ktoré sú väčšie ako x_max , sú nahradené x_max .

Príklad 1:

 import numpy as np x= np.arange(12) y=np.clip(x, 3, 10) y 

Výkon:

 array([ 3, 3, 3, 3, 4, 5, 6, 7, 8, 9, 10, 10]) 

Vo vyššie uvedenom kóde

matematika náhodná java
  • Importovali sme numpy s aliasom np.
  • Vytvorili sme pole 'x' pomocou arange() funkciu.
  • Deklarovali sme premennú 'y' a priradili vrátenú hodnotu klip() funkciu.
  • Vo funkcii sme odovzdali hodnoty poľa 'x', x_min a x_max
  • Nakoniec sme sa pokúsili vytlačiť hodnotu 'a' .

Vo výstupe je zobrazený ndarray, ktorý obsahuje prvky v rozsahu od 3 do 10.

Príklad 2:

 import numpy as np a = np.arange(12) np.clip(a, 3, 9, out=a) a 

Výkon:

 array([3, 3, 3, 3, 4, 5, 6, 7, 8, 9, 9, 9]) array([3, 3, 3, 3, 4, 5, 6, 7, 8, 9, 9, 9]) 

Príklad 3:

 import numpy as np a = np.arange(12) np.clip(a, [3, 4, 1, 1, 1, 4, 4, 4, 4, 4, 5, 6], 8) 

Výkon:

 array([3, 4, 3, 3, 4, 5, 6, 7, 8, 8, 8, 8])