Borrar datos de cadena en el marco de datos de Pandas especificado

| | | |

Supongamos que estamos tratando con datos de un sitio de comercio electrónico. Los nombres de los productos no están en el formato correcto. Formatee los datos correctamente para que no haya espacios iniciales ni finales, y las primeras letras de todos los productos estén en mayúsculas.

Solución #1: En muchos casos, nos enfrentamos a una situación en la que necesita escribir su propia función personalizada adecuada para la tarea en cuestión.


# import pandas as pd

importar pandas como pd


# Crear marco de datos

df = pd.DataFrame ({ `Date` : [< /código> `2/10/2011` , ` 2/11/2011` , `2/12/2011` , < codigo c lass="string">` 13/2/2011` ],

`Producto` : [ `UMbreLla` , ` maTress` , `BaDmintoN` , `Lanzadera` ],

` Precio_Actualizado` : [ 1250 , 1450 , 1550 , 400 ],

` Descuento` : [ 10 , 8 , 15 , 10 ]})


# Imprime el marco de datos

print (df)

Salida:

Ahora escribiremos nuestra propia función personalizada para resolver este problema.


def Format_data (df):

# iterar sobre todas las líneas

para i en rango (df.forma [ 0 ]):


# reasignar los valores ‚Äã‚Äãa la columna del producto

# primero eliminar los espacios usando la función strip()

# luego capitalizamos con la función capitalize()

df. iat [i, 1 ] = df.iat [i, 1 ]. banda (). mayúsculas ( )


# Vamos a llamar a la función
Format_data (df )


# Imprime el marco de datos

print (df)

Salida:

Solución n.° 2: Ahora veremos un enfoque mejor y más eficiente utilizando Pandas función DataFrame.apply () .


# importar pandas como pd

importar pandas como pd


# Crear marco de datos

df = pd.DataFrame ( {` ` Fecha` : [ < clase de código = "cadena"> `2/10/2011` , `2/11/2011` , `2/12/2011` , ` 2/13/2011` ],

`Producto` : [ `UMbreLla` , ` maTress` , `BaDmintoN` , `Lanzadera` ],

`Precio_actualizado` : [ 1250 , 1450 , 1550 , 400 ],

`Descuento` : [ 10 , 8 , 15 , 10 ]})


# Imprimir el marco de datos

imprimir (df)

Salida:

Usemos DataFrame.apply () Pandas DataFrame.apply () para dar formato a los nombres de productos en el formato deseado. Dentro de la función Pandas DataFrame.apply () , usaremos una función lambda.


# Usando el df.apply () función en una columna producto

df [ `Producto` ] = df [ `Producto ` ]. aplicar ( lambda x: x.strip (). mayúsculas ())


# Imprime el marco de datos

imprimir (df)

Salida :

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method