Pandas: como aplicar formatação condicional às células
Você pode usar a função df.style.applymap() para aplicar formatação condicional às células em um DataFrame do pandas.
O exemplo a seguir mostra como usar esta função na prática.
Exemplo: Aplicar formatação condicional a células no Pandas
Suponha que temos o seguinte DataFrame do pandas que contém informações sobre vários jogadores de basquete:
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
Podemos usar o código a seguir para aplicar um fundo verde claro a cada célula do DataFrame que tenha um valor menor que 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)
Observe que cada célula do DataFrame com valor menor que 10 agora tem um fundo verde claro.
Nota : Se a formatação condicional não funcionar em um notebook Jupyter, certifique-se de executar o comando %pip install Jinja2 primeiro.
Também podemos usar os argumentos color e font-weight para aplicar uma formatação condicional mais complexa.
O exemplo a seguir mostra como fazer isso:
#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)
Veja como a função de formatação condicional funcionou neste exemplo:
- Para valores menores que 10 , use um fundo verde claro com uma fonte vermelha em negrito
- Para valores ≥ 10 mas menores que 15 , usar fundo amarelo
- Para valores maiores que 15 , não utilize nenhuma formatação condicional
Sinta-se à vontade para usar quantas funções if , elif e else desejar para aplicar quantas regras de formatação condicional desejar às células no DataFrame.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras operações comuns em pandas:
Como adicionar um título de tabela ao Pandas DataFrame
Como exibir todas as linhas em um DataFrame do Pandas
Como exibir todas as colunas de um DataFrame do Pandas