Panda: come applicare la formattazione condizionale alle celle


È possibile utilizzare la funzione df.style.applymap() per applicare la formattazione condizionale alle celle in un DataFrame panda.

L’esempio seguente mostra come utilizzare questa funzione nella pratica.

Esempio: applicare la formattazione condizionale alle celle in Panda

Supponiamo di avere il seguente DataFrame panda che contiene informazioni su vari giocatori di basket:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' points ': [18, 22, 19, 14, 14, 11, 20, 28],
                   ' assists ': [4, 5, 5, 4, 9, 12, 11, 8],
                   ' rebounds ': [3, 9, 12, 4, 4, 9, 8, 2]})

#view DataFrame
print (df)

   points assists rebounds
0 18 4 3
1 22 5 9
2 19 5 12
3 14 4 4
4 14 9 4
5 11 12 9
6 20 11 8
7 28 8 2

Possiamo utilizzare il seguente codice per applicare uno sfondo verde chiaro a ciascuna cella del DataFrame che ha un valore inferiore a 10:

 #define function for conditional formatting
def cond_formatting (x):
    if x < 10 :
        return ' background-color: lightgreen '
    else :
        return None
    
#display DataFrame with conditional formatting applied    
df. style . applymap (cond_formatting)

formattazione condizionale panda

Tieni presente che ogni cella nel DataFrame con un valore inferiore a 10 ora ha uno sfondo verde chiaro.

Nota : se la formattazione condizionale non funziona in un notebook Jupyter, assicurati di eseguire prima il comando %pip install Jinja2 .

Possiamo anche utilizzare gli argomenti colore e peso carattere per applicare una formattazione condizionale più complessa.

L’esempio seguente mostra come eseguire questa operazione:

 #define function for conditional formatting
def cond_formatting (x):
    if x < 10 :
        return ' background-color: lightgreen; color:red; font-weight:bold '
    elif x < 15 :
        return ' background-color:yellow '
    else :
        return None
    
#display DataFrame with conditional formatting applied    
df. style . applymap (cond_formatting) 

formattazione condizionale panda con più condizioni

Ecco come ha funzionato la funzione di formattazione condizionale in questo esempio:

  • Per valori inferiori a 10 , utilizzare uno sfondo verde chiaro con un carattere rosso in grassetto
  • Per valori ≥ 10 ma inferiori a 15 utilizzare uno sfondo giallo
  • Per valori maggiori di 15 , non utilizzare alcuna formattazione condizionale

Sentiti libero di utilizzare tutte le funzioni if , elif e else che desideri per applicare tutte le regole di formattazione condizionale che desideri alle celle nel DataFrame.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:

Come aggiungere il titolo di una tabella a Pandas DataFrame
Come visualizzare tutte le righe in un Pandas DataFrame
Come visualizzare tutte le colonne di un Pandas DataFrame

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *