Za izrezovanje vrednosti v matriki nudi modul numpy v Pythonu funkcijo, imenovano numpy.clip() . V funkciji clip() bomo posredovali interval, vrednosti, ki so zunaj intervala, pa bodo odrezane za robove intervala.
Če določimo interval [1, 2], potem vrednosti, manjše od 1, postanejo 1, večje od 2 pa 2. Ta funkcija je podobna numpy.maximum(x_min, numpy.maximum(x, x_max)) . Vendar je hitrejši od np.maximum(). notri numpy.clip() , ni treba izvajati preverjanja za zagotovitev x_min
Sintaksa:
numpy.clip(a, a_min, a_max, out=None)
Parametri:
x: array_like
niz v c++
Ta parameter določa izvorno matriko, katere elemente želimo izrezati.
x_min: Brez, skalarno ali array_like
Ta parameter določa najmanjšo vrednost za vrednosti izrezovanja. Na spodnjem robu intervala striženje ni potrebno.
x_max: Brez, skalarno ali array_like
Ta parameter določa največjo vrednost za vrednosti izrezovanja. Na zgornjem intervalnem robu striženje ni potrebno. Trije nizi se oddajajo za ujemanje njihovih oblik z nizi x_min in x_max. To bo izvedeno samo, če sta x_min in x_max podobna array_masu.
ven: ndaaray (neobvezno)
vrzi vrže v javi
Ta parameter določa ndarray, v katerem bo shranjen rezultat. Za izrezovanje na mestu je to lahko vhodno polje. Podatkovni tip teh 'out' nizov ima pravo obliko za shranjevanje izhoda.
Vračila
clip_arr: ndarray
Ta funkcija vrne matriko, ki vsebuje elemente 'x', vendar vrednosti, ki so manjše od x_min, jih nadomestijo z x_min , in tiste, ki so večje od x_max , se nadomestijo z x_max .
chmod 755
Primer 1:
import numpy as np x= np.arange(12) y=np.clip(x, 3, 10) y
Izhod:
array([ 3, 3, 3, 3, 4, 5, 6, 7, 8, 9, 10, 10])
V zgornji kodi
- Uvozili smo numpy z vzdevkom np.
- Z uporabo smo ustvarili matriko 'x' uredi () funkcijo.
- Razglasili smo spremenljivko 'y' in ji dodelili vrnjeno vrednost posnetek () funkcijo.
- V funkciji smo posredovali vrednost matrike 'x', x_min in x_max
- Nazadnje smo poskušali natisniti vrednost 'in' .
V izhodu je prikazana ndarray, ki vsebuje elemente v razponu od 3 do 10.
Primer 2:
import numpy as np a = np.arange(12) np.clip(a, 3, 9, out=a) a
Izhod:
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])
Primer 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)
Izhod:
array([3, 4, 3, 3, 4, 5, 6, 7, 8, 8, 8, 8])