Cancella i dati della stringa in Pandas Dataframe specificato

| | | |

Supponiamo di avere a che fare con dati provenienti da un sito di e-commerce. I nomi dei prodotti non sono nel formato corretto. Formatta i dati correttamente in modo che non ci siano spazi iniziali e finali e che le prime lettere di tutti i prodotti siano in maiuscolo.

Soluzione n. 1: in molti casi ci troviamo di fronte a una situazione in cui è necessario scrivere la propria funzione personalizzata adatta all`attività in corso.


# import pandas as pd

import panda come pd


# Crea frame di dati

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

`Prodotto` : [ `UMbreLla` , ` maTress` , `BaDmintoN` , `Shuttle ` ],

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

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


# Stampa il frame di dati

print (df)

Risultato:

Ora scriveremo una nostra funzione personalizzata per risolvere questo problema.


def Format_data (df):

# itera su tutte le righe

for i in intervallo (df.shape [ 0 ]):


# riassegna i valori ‚Äã‚Äãalla colonna del prodotto

# rimuovi prima gli spazi usando la funzione strip()

# quindi capitalizziamo con la funzione capitalize()

df. iat [i, 1 ] = df.iat [i, 1 ]. striscia (). capitalize ( )


# Andiamo a chiamare la funzione
Format_data (df )


# Stampa il dataframe

print (df)

Output:

Soluzione n. 2: ora vedremo un approccio migliore e più efficiente utilizzando Pandas funzione DataFrame.apply () .


# importa panda come pd

importa panda come pd


# Crea frame di dati

df = pd.DataFrame ( {` ` Date` : [ `10/2/2011` , `11/2/2011` , `2/12/2011` , ` 2/13/2011` ],

`Prodotto` : [ `UMbreLla` , ` maTress` , `BaDmintoN` , `Shuttle` ],

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

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


# Stampa il frame di dati

print (df)

Risultato:

Utilizziamo DataFrame.apply() Pandas DataFrame.apply() per formattare i nomi dei prodotti nel formato desiderato. All`interno della funzione DataFrame.apply() di Pandas, utilizzeremo una funzione lambda.


# Usando il funzione df.apply() su una colonna product

df [ `Product` ] = df [ `Prodotto ` ]. applica ( lambda x: x.strip ().capitalize())


# Stampa il dataframe

print (df)

Output :
< / p>

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