A numpy modul Piton nevű függvényt biztosít numpy.diff az n kiszámításáhozthdiszkrét különbség az adott tengely mentén. Ha 'x' a bemeneti tömb, akkor az első különbséget az out[i]=x[i+1]-a[i] adja. A nagyobb különbséget a diff rekurzív használatával számíthatjuk ki. A Python numpy modulja egy numpy.diff függvényt biztosít az n-edik diszkrét különbség kiszámításához az adott tengely mentén. Ha 'x' a bemeneti tömb, akkor az első különbséget az out[i]=x[i+1]-a[i] adja. segítségével kiszámíthatjuk a nagyobb különbséget diff rekurzív módon.
Szintaxis
numpy.diff(a, n=1, axis=-1, prepend=, append=)
Paraméterek
x: array_like
Ez a paraméter határozza meg azt a forrástömböt, amelynek elemei n-edik diszkrét deferencia azok, amelyeket ki szeretnénk számítani.
n: int (nem kötelező)
Ez a paraméter határozza meg, hogy hányszor legyen eltérés az értékek között. Ha 0, akkor a forrástömb visszaadásra kerül úgy, ahogy van.
append, prepend: array_like (opcionális)
Ez a paraméter egy ndarray-t definiál, amely meghatározza a hozzáfűzendő vagy előtag értékeket 'x' , a tengely mentén a különbségek kiszámítása előtt.
Visszaküldés:
Ez a függvény egy n-edik különbséget tartalmazó ndarray-t ad vissza, amelynek alakja megegyezik a 'x,' és a méret től kisebb n . A két elem közötti különbség típusa 'x' a kimenet típusa.
1. példa:
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,...]
Kimenet:
array([0, 1, 2], dtype=uint8) array([1, 1], dtype=uint8) 1
A fenti kódban
- Importáltuk a numpy-t np aliasnévvel.
- Létrehoztunk egy tömböt 'arr' segítségével np.array() függvényt a dtype segítségével 'uint8' .
- Deklaráltuk a változót 'b' és hozzárendelte a visszaadott értékét np.diff() funkció.
- Túljutottunk a tömbön 'arr' a függvényben.
- Végül megpróbáltuk kinyomtatni az értékét 'b' és az elemek közötti különbség.
A kimenetben az elemek diszkrét különbségeit mutatja.
2. példa:
import numpy as np x = np.array([11, 21, 41, 71, 1, 12, 33, 2]) y = np.diff(x) x y
Kimenet:
array([11, 21, 41, 71, 1, 12, 33, 2]) array([ 10, 20, 30, -70, 11, 21, -31])
3. példa:
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
Kimenet:
array([[ 60, -20, -29], [-38, 1, 1]]) array([[ 10, 20], [-70, 11], [-31, 11]])
4. példa:
import numpy as np x = np.arange('1997-10-01', '1997-12-16', dtype=np.datetime64) y = np.diff(x) y
Kimenet:
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]')
A fenti kódban
- Importáltuk a numpy-t np aliasnévvel.
- Készítettünk egy sor dátumot 'x' segítségével np.arange() függvényt a dtype segítségével 'datetime64' .
- Deklaráltuk a változót 'és' és hozzárendelte a visszaadott értékét np.diff() funkció.
- Túljutottunk a tömbön 'x' a függvényben.
- Végül megpróbáltuk kinyomtatni az értékét 'és' .
A kimenetben a dátumok közötti diszkrét különbségeket mutatja.