logo

numpy.diff() w Pythonie

Moduł numpy Pyton udostępnia funkcję tzw numpy.diff do obliczenia ntdyskretna różnica wzdłuż danej osi. Jeśli 'X' jest tablicą wejściową, wówczas pierwszą różnicę podaje out[i]=x[i+1]-a[i]. Większą różnicę możemy obliczyć, używając rekurencyjnie diff. Moduł numpy języka Python udostępnia funkcję o nazwie numpy.diff służącą do obliczania n-tej dyskretnej różnicy wzdłuż danej osi. Jeśli „x” jest tablicą wejściową, wówczas pierwszą różnicę podaje out[i]=x[i+1]-a[i]. Większą różnicę możemy obliczyć za pomocą różnica rekurencyjnie.

Składnia

 numpy.diff(a, n=1, axis=-1, prepend=, append=) 

Parametry

x: tablica_podobna

Parametr ten definiuje tablicę źródłową, której elementy n-tego dyskretnego szacunku są tymi, które chcemy obliczyć.

dotychczasowy ciąg konwertera

n: int (opcjonalnie)

Ten parametr określa, ile razy wartości są różnicowane. Jeśli wynosi 0, tablica źródłowa jest zwracana w niezmienionej postaci.

dołącz, dołącz: array_like (opcjonalnie)

Ten parametr definiuje ndarray, który definiuje wartości, które będą dodawane lub poprzedzane 'X' , wzdłuż osi przed obliczeniem różnic.

pełny obwód sumatora

Zwroty:

Ta funkcja zwraca ndarray zawierający n-te różnice o takim samym kształcie jak 'X,' a wymiar jest mniejszy od N . Typ różnicy między dowolnymi dwoma elementami 'X' to typ wyjścia.

Przykład 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,...] 

Wyjście:

 array([0, 1, 2], dtype=uint8) array([1, 1], dtype=uint8) 1 

W powyższym kodzie

  • Zaimportowaliśmy numpy z aliasem np.
  • Stworzyliśmy tablicę „arr” za pomocą np.tablica() funkcja z typem d „uint8” .
  • Zadeklarowaliśmy zmienną 'B' i przypisano zwróconą wartość np.diff() funkcjonować.
  • Minęliśmy tablicę „arr” w funkcji.
  • Na koniec próbowaliśmy wydrukować wartość 'B' i różnicę między elementami.

Na wyjściu pokazuje dyskretne różnice elementów.

Przykład 2:

 import numpy as np x = np.array([11, 21, 41, 71, 1, 12, 33, 2]) y = np.diff(x) x y 

Wyjście:

zawiera w ciągu
 array([11, 21, 41, 71, 1, 12, 33, 2]) array([ 10, 20, 30, -70, 11, 21, -31]) 

Przykład 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 

Wyjście:

 array([[ 60, -20, -29], [-38, 1, 1]]) array([[ 10, 20], [-70, 11], [-31, 11]]) 

Przykład 4:

 import numpy as np x = np.arange('1997-10-01', '1997-12-16', dtype=np.datetime64) y = np.diff(x) y 

Wyjście:

 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]') 

W powyższym kodzie

  • Zaimportowaliśmy numpy z aliasem np.
  • Stworzyliśmy tablicę dat 'X' za pomocą np.arange() funkcja z typem d „data/godzina64” .
  • Zadeklarowaliśmy zmienną 'I' i przypisano zwróconą wartość np.diff() funkcjonować.
  • Minęliśmy tablicę 'X' w funkcji.
  • Na koniec próbowaliśmy wydrukować wartość 'I' .

Dane wyjściowe pokazują dyskretne różnice między datami.