Python | Pandas marco de datos.rsub ()

| | | | | | | | | | | |

La función de Pandas dataframe.rsub() se usa para encontrar sustracción de datos y otros, elemento por elemento (operador binario rfloordiv). Esta función es esencialmente la misma que para el otro — marco de datos, pero con soporte para reemplazar los datos faltantes en una de las entradas.

Sintaxis: DataFrame.rsub (otro, eje = `columnas`, nivel = Ninguno , fill_value = Ninguno)
Parámetros:
otro: Serie, trama de datos o constante
eje: para entrada de serie , eje para que coincida con el índice de la serie en
nivel: Difundir a través de un nivel, haciendo coincidir los valores del Índice ‚Äã‚Äãoen el nivel MultiIndex pasado
fill_value: Rellenar los faltantes existentes (NaN) y cualquier elemento nuevo necesario para una alineación exitosa de DataFrame, con este valor antes del cálculo. Si faltan datos en ambas ubicaciones correspondientes de DataFrame, faltará el resultado.

Devuelve: resultado: DataFrame

Ejemplo # 1: Use rsub () para restar cada elemento de la serie al valor correspondiente en el marco de datos del eje de la columna.


# importar pandas como pd

import pandas como pd


# Crear marco de datos

df = pd.DataFrame ({ "A" : [ 1 , 5 , 3 , 4 , 2 ] ,

"B" : [ 3 , 2 , 4 , 3 , 4 ],

< clase de código ="espacios indefinidos" > "C" : [ 2 , 2 , 7 , 3 , 4 ],

"D" : [ 4 , 3 , 6 , 12 , 7 ]},

índice = [ "A1" , "A2" , "A3" , "A4" , " A5 " ])


# Imprime el marco de datos
df

Vamos a crear una serie


# importar pandas como pd

importar pandas como pd


# Crear serie

sr = pd.Series ([ 12 , 25 , 64 , 18 ], índice = [ "A" , "B" , "C" , < código clase = "cadena"> "D" ])


# Imprimir serie
sr

Usemos la función dataframe.rsub () para restar cada elemento en serie con el elemento correspondiente en el marco de datos.


# equivalente a sr - df

df.rsub (sr, eje = 1 )

Salida:

Ejemplo #2: Usar rsub () para restar cada elemento en el marco de datos con el siguiente elemento correspondiente en otro marco de datos


# importar pandas como pd

import pandas as pd


# Crear el primer marco de datos

df1 = pd.DataFrame ({ "A" : [ 1 , 5 , 3 , 4 , 2 ] ,

"B" : [ 3 , 2 , 4 , 3 , 4 ],

"C" : [ 2 , 2 , < /código> 7 , 3 , 4 ],

"D" : [ 4 , 3 , 6 , 12 , 7 ]},

índice = [ "A1" , "A2" , "A3" , " A4 " , " A5 " ])


# Crear un segundo marco de datos

df2 = pd.DataFrame ({ "A" : [ 10 , < /código> 11 , 7 , 8 , 5 ] ,

" B " : [ 21 , 5 , 32 , 4 , 6 ],

"C" : [ 11 , 21 , 23 , 7 < código clase="simple">, 9 ],

"D" : [ 1 , < código clase = "valor"> 5 , 3 , 8 , 6 ]} ,

índice = [ "A1" , "A2" , "A3" , "A4" , "A5" ] )

< br> # Imprime el primer cuadro de datos

print (df1 )


# Imprime el segundo marco de datos

print (df2)


Habilita df2 - df1


# restar df1 de df2
df1.rsub (df2)

Salida: