Diferencia entre los métodos map, applymap y apply en Pandas

La biblioteca de Pandas se usa ampliamente para la manipulación y el análisis de datos. map()y applymap()los apply()métodos son métodos de la biblioteca de Pandas.

applymap()El método solo funciona en un marco de datos de pandas donde la función se aplica en cada elemento individualmente.

apply()El método se puede aplicar tanto a series como a marcos de datos donde la función se puede aplicar tanto a series como a elementos individuales según el tipo de función proporcionada.

map()El método solo funciona en una serie pandas donde el tipo de operación que se aplicará depende del argumento pasado como función, diccionario o lista.

Tenga en cuenta que el tipo de Salida depende totalmente del tipo de función utilizada como argumento con el método dado.

Método de pandas apply():
este método que se puede usar tanto en un marco de datos como en una serie de pandas. La función pasada como argumento normalmente funciona en filas/columnas. El siguiente código ilustra cómo apply()funciona el método en el marco de datos de Pandas.

# Importing pandas library with an alias pd
import pandas as pd
   
# Dataframe generation
gfg_string = 'geeksforgeeks'
gfg_list = 5 * [pd.Series(list(gfg_string))]
   
gfg_df = pd.DataFrame(data = gfg_list)
print("Original dataframe:\n" + \
      gfg_df.to_string(index = False,
      header = False), end = '\n\n')
   
# Using apply method for sorting 
# rows of characters present in 
# the original dataframe
new_gfg_df = gfg_df.apply(lambda x:x.sort_values(), axis = 1)
  
print("Transformed dataframe:\n" + \
       new_gfg_df.to_string(index = False,
            header = False), end = '\n\n')

Producción:

El siguiente código ilustra cómo funciona apply()el método en la serie Pandas:

# Importing pandas library with an alias pd
import pandas as pd
   
# Series generation
gfg_string = 'geeksforgeeks'
gfg_series = pd.Series(list(gfg_string))
print("Original series\n" + \
       gfg_series.to_string(index = False,
            header = False), end = '\n\n')
   
# Using apply method for converting characters
# present in the original series
new_gfg_series = gfg_series.apply(str.upper)
print("Transformed series:\n" + \
       new_gfg_series.to_string(index = False,
                header = False), end = '\n\n')

Producción:

 
Método de pandas applymap():
este método se puede usar en un marco de datos de pandas. La función pasada como argumento generalmente funciona en elementos del marco de datos applymap()y generalmente se usa para operaciones de elementos. El siguiente código ilustra cómo applymapfunciona el método en el marco de datos de pandas:

# Importing pandas library with an alias pd
import pandas as pd
   
# DataFrame generation
gfg_string = 'geeksforgeeks'
gfg_list = 5 * [pd.Series(list(gfg_string))]
gfg_df = pd.DataFrame(data = gfg_list)
  
print("Original dataframe:\n" + \
       gfg_df.to_string(index = False,
        header = False), end = '\n\n')
   
# Using applymap method for transforming 
# characters into uppercase characters 
# present in the original dataframe
new_gfg_df = gfg_df.applymap(str.upper)
print("Transformed dataframe:\n" + \
       new_gfg_df.to_string(index = False,
            header = False), end = '\n\n')

Producción:

Método Pandas map():
este método se utiliza en función de serie, lista y diccionario pasado como argumento. Este método generalmente se usa para mapear valores de dos series que tienen una columna igual. El siguiente código ilustra cómo mapfunciona el método en la serie pandas:

# Importing pandas library with an alias pd
import pandas as pd
   
# Series generation
gfg_string = 'geeksforgeeks'
gfg_series = pd.Series(list(gfg_string))
print("Original series\n" + \
       gfg_series.to_string(index = False,
            header = False), end = '\n\n')
   
# Using apply method for converting characters
# present in the original series
new_gfg_series = gfg_series.map(str.upper)
print("Transformed series:\n" + \
       new_gfg_series.to_string(index = False,
                header = False), end = '\n\n')

Producción:

Publicación traducida automáticamente

Artículo escrito por Harshit Saini 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 *