Los objetos pasados a pandas.apply() son objetos Series cuyo índice es el índice del DataFrame (eje=0) o las columnas del DataFrame (eje=1). De forma predeterminada (result_type=None), el tipo de devolución final se deduce del tipo de devolución de la función aplicada. De lo contrario, depende del argumento tipo_resultado.
Sintaxis: DataFrame.apply(func, axis=0, broadcast=Ninguno, raw=False, reduce=Ninguno, result_type=Ninguno, args=(), **kwds)
A continuación se muestran algunos programas que representan el uso depandas.DataFrame.apply()
Ejemplo 1:
# Program to illustrate the use of # pandas.DataFrame.apply() method # Importing required Libraries import pandas import numpy # Creating dataframe dataFrame = pandas.DataFrame([[4, 9], ] * 3, columns =['A', 'B']) print('Data Frame:') display(dataFrame) # Using pandas.DataFrame.apply() on the data frame print('Returning multiple columns from Pandas apply()') dataFrame.apply(numpy.sqrt)
Producción:
Using a numpy universal function (in this case the same as numpy.sqrt(dataFrame)).
Ejemplo 2:
# Program to illustrate the use of # pandas.DataFrame.apply() method # Importing required Libraries import pandas import numpy # Creating dataframe dataFrame = pandas.DataFrame([[4, 9], ] * 3, columns =['A', 'B']) print('Data Frame:') display(dataFrame) # Using pandas.DataFrame.apply() on the data frame print('Returning multiple columns from Pandas apply()') dataFrame.apply(numpy.sum, axis = 0)
Producción:
Using a reducing function on columns.
Ejemplo 3:
# Program to illustrate the use of # pandas.DataFrame.apply() method # Importing required Libraries import pandas import numpy # Creating dataframe dataFrame = pandas.DataFrame([[4, 9], ] * 3, columns =['A', 'B']) print('Data Frame:') display(dataFrame) # Using pandas.DataFrame.apply() on the data frame print('Returning multiple columns from Pandas apply()') dataFrame.apply(numpy.sum, axis = 1)
Producción:
Usando una función de reducción en las filas.
Ejemplo 4:
# Program to illustrate the use of # pandas.DataFrame.apply() method # Importing required Libraries import pandas import numpy # Creating dataframe dataFrame = pandas.DataFrame([[4, 9], ] * 3, columns =['A', 'B']) print('Data Frame:') display(dataFrame) # Using pandas.DataFrame.apply() on the data frame print('Returning multiple columns from Pandas apply()') dataFrame.apply(lambda x: [1, 2], axis = 1)
Producción:
Devolver una lista similar dará como resultado una Serie.
Ejemplo 5:
# Program to illustrate the use of # pandas.DataFrame.apply() method # Importing required Libraries import pandas import numpy # Creating dataframe dataFrame = pandas.DataFrame([[4, 9], ] * 3, columns =['A', 'B']) print('Data Frame:') display(dataFrame) # Using pandas.DataFrame.apply() on the data frame print('Returning multiple columns from Pandas apply()') dataFrame.apply(lambda x: [1, 2], axis = 1, result_type ='expand')
Producción:
Pasar result_type=’expand’ expandirá los resultados similares a una lista a las columnas de un marco de datos.
Ejemplo 6:
# Program to illustrate the use of # pandas.DataFrame.apply() method # Importing required Libraries import pandas import numpy # Creating dataframe dataFrame = pandas.DataFrame([[4, 9], ] * 3, columns =['A', 'B']) print('Data Frame:') display(dataFrame) # Using pandas.DataFrame.apply() on the data frame print('Returning multiple columns from Pandas apply()') dataFrame.apply(lambda x: pandas.Series( [1, 2], index =['foo', 'bar']), axis = 1)
Producción:
Devolver una Serie dentro de la función es similar a pasar result_type=’expand’. Los nombres de las columnas resultantes serán el índice de la serie.
Ejemplo 7:
# Program to illustrate the use of # pandas.DataFrame.apply() method # Importing required Libraries import pandas import numpy # Creating dataframe dataFrame = pandas.DataFrame([[4, 9], ] * 3, columns =['A', 'B']) print('Data Frame:') display(dataFrame) # Using pandas.DataFrame.apply() on the data frame print('Returning multiple columns from Pandas apply()') dataFrame.apply(lambda x: [1, 2], axis = 1, result_type ='broadcast')
Producción:
Passing result_type=’broadcast’ will ensure the same shape result, whether list-like or scalar is returned by the function, and broadcast it along the axis. The resulting column names will be the originals.
Publicación traducida automáticamente
Artículo escrito por riturajsaha y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA