Код: Выделить всё
t1 = pd.DataFrame({'x':[300,200,700], 'y':[100,300,200]})
t2 = pd.DataFrame({'x':['A','B','C'], 'y':['C','B','D']})
def highlight_cell(val, props=''):
return props if val > 200 else ''
t2.style.apply(lambda x: t1.map(highlight_cell, props='background-color:yellow'), axis=None)

Но может ли кто-нибудь объяснить, как работает последняя строка? Мне не удалось найти документацию Pandas, которая разъясняла бы поведение df.map() внутри другого df.apply().
Для меня код выглядит следующим образом: например, для каждого элемента в t1 примените Highlight_cell() сразу ко всему t2, а затем верните все это целиком, как показано в этом псевдокоде.
Код: Выделить всё
for x in all_items_in_t1:
yield [highlight_cell(y) for y in all_items_in_t2]
Код: Выделить всё
for x, y in zip(all_items_in_t1, all_items_in_t2):
yield highlight_cell(y)
Подробнее здесь: https://stackoverflow.com/questions/792 ... r-df-apply
Мобильная версия