Python es un excelente lenguaje para realizar análisis de datos, principalmente debido al fantástico ecosistema de paquetes de Python centrados en datos. Pandas es uno de esos paquetes y facilita mucho la importación y el análisis de datos.
Pandas Series.combine()
es un método de operación matemática en serie. Esto se utiliza para combinar dos series en una. La forma de la serie de salida es la misma que la serie de llamada. Los elementos son decididos por una función pasada como parámetro al combine()
método. La forma de ambas series tiene que ser la misma, de lo contrario arrojará un error.
Sintaxis: Series.combine(other, func, fill_value=nan)
Parámetros:
otro: otra serie o tipo de lista que se combinará con la serie de llamadas
func: función pasada como parámetro que decidirá de qué serie el elemento debe colocarse en ese índice
fill_value: valor entero del nivel en caso de índice múltipleRetorno: Serie combinada con la misma forma que la serie llamante
Ejemplo 1:
En este ejemplo, se crean dos listas y se convierten en series de pandas utilizando el método .Series(). Se crea una función usando lambda que verifica qué valores son más pequeños en ambas series y devuelve el que es más pequeño.
# importing pandas module import pandas as pd # creating first series first =[1, 2, 5, 6, 3, 7, 11, 0, 4] # creating second series second =[5, 3, 2, 1, 3, 9, 21, 3, 1] # making series first = pd.Series(first) # making seriesa second = pd.Series(second) # calling .combine() method result = first.combine(second, (lambda x1, x2: x1 if x1 < x2 else x2)) # display result
Salida:
como se muestra en la imagen de salida, la serie devuelta tiene valores más pequeños de ambas series.
Ejemplo #2:
En este ejemplo, los valores nulos también se pasan usando el Numpy.nan
método. Dado que la serie contiene valores nulos, se pasa 5 al parámetro fill_value para reemplazar los valores nulos por 5. Se pasa una función lambda que comparará los valores en ambas series y devolverá el mayor.
# importing pandas module import pandas as pd # importing numpy module import numpy as np # creating first series first =[1, 2, np.nan, 5, 6, 3, np.nan, 7, 11, 0, 4, 8] # creating second series second =[5, 3, 2, np.nan, 1, 3, 9, 21, 3, np.nan, 1, np.nan] # making series first = pd.Series(first) # making seriesa second = pd.Series(second) # calling .combine() method result = first.combine(second, func =(lambda x1, x2: x1 if x1 > x2 else x2), fill_value = 5) # display result
Salida:
como se muestra en la salida, los valores de NaN en la serie fueron reemplazados por 5 antes de combinar la serie.
0 5.0 1 3.0 2 2.0 3 5.0 4 6.0 5 3.0 6 9.0 7 21.0 8 11.0 9 5.0 10 4.0 11 8.0 dtype: float64
Publicación traducida automáticamente
Artículo escrito por Kartikaybhutani y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA