Pandas: як застосувати умовне форматування до клітинок
Ви можете використовувати функцію df.style.applymap() , щоб застосувати умовне форматування до клітинок у pandas DataFrame.
У наступному прикладі показано, як використовувати цю функцію на практиці.
Приклад: застосування умовного форматування до клітинок у Pandas
Припустімо, що у нас є такий фрейм даних pandas, який містить інформацію про різних баскетболістів:
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
Ми можемо використати наступний код, щоб застосувати світло-зелений фон до кожної комірки в DataFrame, яка має значення менше 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)
Зауважте, що кожна клітинка в DataFrame зі значенням менше 10 тепер має світло-зелений фон.
Примітка : якщо умовне форматування не працює в блокноті Jupyter, переконайтеся, що спочатку запустили команду %pip install Jinja2 .
Ми також можемо використовувати аргументи color і font-weight для застосування більш складного умовного форматування.
У наступному прикладі показано, як це зробити:
#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)
Ось як працювала функція умовного форматування в цьому прикладі:
- Для значень менше 10 використовуйте світло-зелений фон із жирним червоним шрифтом
- Для значень ≥ 10 , але менше 15 використовуйте жовтий фон
- Для значень більше 15 не використовуйте умовне форматування
Не соромтеся використовувати стільки функцій if , elif та else , скільки забажаєте, щоб застосувати стільки правил умовного форматування до комірок у DataFrame, скільки забажаєте.
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові операції в pandas:
Як додати назву таблиці до Pandas DataFrame
Як відобразити всі рядки у Pandas DataFrame
Як відобразити всі стовпці Pandas DataFrame