Numpy modulis Python suteikia funkciją, vadinamą nelygus.diff n apskaičiavimuithdiskretiškas skirtumas išilgai nurodytos ašies. Jeigu 'x' yra įvesties masyvas, tada pirmasis skirtumas pateikiamas out[i]=x[i+1]-a[i]. Didesnį skirtumą galime apskaičiuoti naudodami diff rekursyviai. Python modulis numpy suteikia funkciją, vadinamą numpy.diff, skirtą n-ajam diskretajam skirtumui išilgai nurodytos ašies apskaičiuoti. Jei 'x' yra įvesties masyvas, tada pirmasis skirtumas gaunamas iš out[i]=x[i+1]-a[i]. Didesnį skirtumą galime apskaičiuoti naudodami skirt rekursyviai.
Sintaksė
numpy.diff(a, n=1, axis=-1, prepend=, append=)
Parametrai
x: panašus į masyvą
Šis parametras apibrėžia šaltinio masyvą, kurio n-oji diskrečioji nuokrypa yra tie, kuriuos norime apskaičiuoti.
n: int (neprivaloma)
Šis parametras apibrėžia, kiek kartų reikšmės skiriasi. Jei jis yra 0, tada šaltinio masyvas grąžinamas toks, koks yra.
pridėti, pridėti: array_like (neprivaloma)
Šis parametras apibrėžia ndarray, kuris apibrėžia reikšmes, prie kurių bus pridėta arba pridedama 'x' , išilgai ašies prieš apskaičiuojant skirtumus.
Grąžinimai:
Ši funkcija grąžina ndarray, turinčią n-tuosius skirtumus, turinčius tokią pačią formą kaip 'x,' o matmuo yra mažesnis nuo n . Skirtumo tarp bet kurių dviejų elementų tipas 'x' yra išvesties tipas.
1 pavyzdys:
import numpy as np arr = np.array([0, 1, 2], dtype=np.uint8) arr b=np.diff(arr) b arr[2,...] - arr[1,...] - arr[0,...]
Išvestis:
array([0, 1, 2], dtype=uint8) array([1, 1], dtype=uint8) 1
Aukščiau pateiktame kode
- Mes importavome numpy su slapyvardžiu np.
- Mes sukūrėme masyvą 'arr' naudojant np.array() funkcija su dtype 'uint8' .
- Mes paskelbėme kintamąjį 'b' ir priskyrė grąžintą vertę np.diff() funkcija.
- Mes praėjome masyvą 'arr' funkcijoje.
- Galiausiai bandėme atspausdinti vertę 'b' ir elementų skirtumas.
Išvestyje jis parodo atskirus elementų skirtumus.
keitiklio eilutė iki šiol
2 pavyzdys:
import numpy as np x = np.array([11, 21, 41, 71, 1, 12, 33, 2]) y = np.diff(x) x y
Išvestis:
array([11, 21, 41, 71, 1, 12, 33, 2]) array([ 10, 20, 30, -70, 11, 21, -31])
3 pavyzdys:
import numpy as np x = np.array([[11, 21, 41], [71, 1, 12], [33, 2, 13]]) y = np.diff(x, axis=0) y z = np.diff(x, axis=1) z
Išvestis:
array([[ 60, -20, -29], [-38, 1, 1]]) array([[ 10, 20], [-70, 11], [-31, 11]])
4 pavyzdys:
import numpy as np x = np.arange('1997-10-01', '1997-12-16', dtype=np.datetime64) y = np.diff(x) y
Išvestis:
array([1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], dtype='timedelta64[D]')
Aukščiau pateiktame kode
- Mes importavome numpy su slapyvardžiu np.
- Sukūrėme datų masyvą 'x' naudojant np.arange() funkcija su dtype 'datetime64' .
- Mes paskelbėme kintamąjį 'ir' ir priskyrė grąžintą vertę np.diff() funkcija.
- Mes praėjome masyvą 'x' funkcijoje.
- Galiausiai bandėme atspausdinti vertę 'ir' .
Išvestyje jis parodo atskirus datų skirtumus.