Numpy modul Krajta poskytuje funkci tzv numpy.diff pro výpočet nčtdiskrétní rozdíl podél dané osy. Li 'X' je vstupní pole, pak je první rozdíl dán jako out[i]=x[i+1]-a[i]. Vyšší rozdíl můžeme vypočítat pomocí diff rekurzivně. Numpy modul Pythonu poskytuje funkci nazvanou numpy.diff pro výpočet n-tého diskrétního rozdílu podél dané osy. Pokud je 'x' vstupní pole, pak je první rozdíl dán out[i]=x[i+1]-a[i]. Vyšší rozdíl můžeme vypočítat pomocí dif rekurzivně.
Syntax
numpy.diff(a, n=1, axis=-1, prepend=, append=)
Parametry
x: array_like
Tento parametr definuje zdrojové pole, jehož prvky n-té diskrétní odchylky jsou ty, které chceme vypočítat.
n: int (volitelné)
Tento parametr definuje, kolikrát se hodnoty liší. Pokud je 0, pak se zdrojové pole vrátí tak, jak je.
připojit, předřadit: array_like(volitelné)
Tento parametr definuje ndarray, který definuje hodnoty, které budou připojeny nebo před nimi 'X' podél osy před výpočtem rozdílů.
Vrácení:
Tato funkce vrací ndarray obsahující n-té rozdíly mající stejný tvar jako 'X,' a rozměr je menší od n . Typ rozdílu mezi libovolnými dvěma prvky 'X' je typ výstupu.
Příklad 1:
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,...]
Výstup:
array([0, 1, 2], dtype=uint8) array([1, 1], dtype=uint8) 1
Ve výše uvedeném kódu
- Importovali jsme numpy s aliasem np.
- Vytvořili jsme pole 'arr' použitím np.array() funkce s dtype 'uint8' .
- Proměnnou jsme deklarovali 'b' a přiřadil vrácenou hodnotu np.diff() funkce.
- Prošli jsme polem 'arr' ve funkci.
- Nakonec jsme zkusili vytisknout hodnotu 'b' a rozdíl mezi prvky.
Ve výstupu ukazuje diskrétní rozdíly prvků.
Příklad 2:
import numpy as np x = np.array([11, 21, 41, 71, 1, 12, 33, 2]) y = np.diff(x) x y
Výstup:
array([11, 21, 41, 71, 1, 12, 33, 2]) array([ 10, 20, 30, -70, 11, 21, -31])
Příklad 3:
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
Výstup:
array([[ 60, -20, -29], [-38, 1, 1]]) array([[ 10, 20], [-70, 11], [-31, 11]])
Příklad 4:
import numpy as np x = np.arange('1997-10-01', '1997-12-16', dtype=np.datetime64) y = np.diff(x) y
Výstup:
jak převést z řetězce na int
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]')
Ve výše uvedeném kódu
- Importovali jsme numpy s aliasem np.
- Vytvořili jsme řadu dat 'X' použitím np.arange() funkce s dtype 'datetime64' .
- Proměnnou jsme deklarovali 'a' a přiřadil vrácenou hodnotu np.diff() funkce.
- Prošli jsme polem 'X' ve funkci.
- Nakonec jsme zkusili vytisknout hodnotu 'a' .
Ve výstupu ukazuje diskrétní rozdíly mezi daty.