¿Cómo encontrar la diferencia entre dos filas en pandas?

En este artículo, vamos a ver cómo encontrar la diferencia entre dos filas en Pandas. 

Pandas DataFrame es una estructura de datos bidimensional en forma tabular con ejes etiquetados. Durante el análisis de datos, es posible que sea necesario calcular la diferencia entre dos filas para fines de comparación. Esto se puede hacer usando la función pandas.DataFrame.diff() . Esta función calcula la diferencia entre dos elementos DataFrame consecutivos. 

Sintaxis: pandas.DataFrame.diff(períodos=1, eje=0)

Parámetros:

  • Periodos: representa los periodos a cambiar para calcular la diferencia, valor de tipo entero. El valor predeterminado es 1
  • eje: Representa la diferencia que se tomará sobre filas o columnas. Puede tomar dos valores {0: filas, 1: columnas}. El valor predeterminado es 0

Devoluciones: Devoluciones DataFrame

Ejemplo 1: para probar esta función, creamos un DataFrame ficticio con 3 columnas y 6 filas. Ahora, esta función diff encontrará la diferencia de cada fila con su fila anterior, ya que los períodos por defecto son 1. Por lo tanto, la razón por la cual los valores en la fila indexada 0 son NaN.

Python3

# Importing Pandas Library
import pandas as pd 
  
# Creating dummy DataFrame for testing
df = pd.DataFrame({ 'a': [1, 2, 3, 4, 5, 6],
                    'b': [8, 18, 27, 20, 33, 49],
                    'c': [2, 24, 6, 16, 20, 52]})
# Printing DataFrame before applying diff function
print(df)
  
# Printing DataFrame after applying diff function
print("Difference: ")
print(df.diff())

Producción:

   a   b   c
0  1   8   2
1  2  18  24
2  3  27   6
3  4  20  16
4  5  33  20
5  6  49  52
Difference: 
     a     b     c
0  NaN   NaN   NaN
1  1.0  10.0  22.0
2  1.0   9.0 -18.0
3  1.0  -7.0  10.0
4  1.0  13.0   4.0
5  1.0  16.0  32.0

Ejemplo 2:

Python3

# Importing Pandas Library
import pandas as pd 
  
# Creating dummy DataFrame for testing
df = pd.DataFrame({ 'a': [1, 2, 3, 4, 5, 6],
                    'b': [8, 18, 27, 20, 33, 49],
                    'c': [2, 24, 6, 16, 20, 52]})
# Printing DataFrame before applying diff function
print(df)
  
# Printing DataFrame after applying diff function
print("Difference: ")
print(df.diff(periods=2))

Producción:

   a   b   c
0  1   8   2
1  2  18  24
2  3  27   6
3  4  20  16
4  5  33  20
5  6  49  52
Difference: 
     a     b     c
0  NaN   NaN   NaN
1  NaN   NaN   NaN
2  2.0  19.0   4.0
3  2.0   2.0  -8.0
4  2.0   6.0  14.0
5  2.0  29.0  36.0

Publicación traducida automáticamente

Artículo escrito por vibhutijain99 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *