La función numpy.diff(arr[, n[, axis]]) se usa cuando calculamos la diferencia discreta de orden n a lo largo del eje dado. La diferencia de primer orden viene dada por out[i] = arr[i+1] – arr[i] a lo largo del eje dado. Si tenemos que calcular diferencias mayores, estamos usando diff recursivamente.
Sintaxis: numpy.diff()
Parámetros:
arr : [array_like] Array de entrada.
n : [int, opcional] El número de veces que se diferencian los valores.
eje : [int, opcional] El eje a lo largo del cual se toma la diferencia, por defecto es el último eje.
Devuelve: [ndarray] La n-ésima diferencia discreta. La salida es la misma que a excepto a lo largo del eje donde la dimensión es más pequeña en n.
Código #1:
Python3
# Python program explaining # numpy.diff() method # importing numpy import numpy as geek # input array arr = geek.array([1, 3, 4, 7, 9]) print("Input array : ", arr) print("First order difference : ", geek.diff(arr)) print("Second order difference : ", geek.diff(arr, n = 2)) print("Third order difference : ", geek.diff(arr, n = 3))
Producción:
Input array : [1 3 4 7 9] First order difference : [2 1 3 2] Second order difference : [-1 2 -1] Third order difference : [ 3 -3]
Código #2:
Python3
# Python program explaining # numpy.diff() method # importing numpy import numpy as geek # input array arr = geek.array([[1, 2, 3, 5], [4, 6, 7, 9]]) print("Input array : ", arr) print("Difference when axis is 0 : ", geek.diff(arr, axis = 0)) print("Difference when axis is 1 : ", geek.diff(arr, axis = 1))
Producción:
Input array : [[1 2 3 5] [4 6 7 9]] Difference with axis 0 : [[3 4 4 4]] Difference with axis 1 : [[1 1 2] [2 1 2]]