Использование фрейма данных для форматирования стиля другого фрейма данных - PullRequest
1 голос
/ 01 мая 2019

У меня есть один фрейм данных pandas, который я хочу стилизовать в формате на основе значений другого фрейма данных той же формы / размера.Я пытаюсь использовать applymap.

Вот пример:

t1= pd.DataFrame({'x':['A','B','C'], 'y':['C','B','D']})
t2= pd.DataFrame({'x':[0.3,0.2,0.7], 'y':[1,0.3,2]})

def color_cells(s, threshold=0.5):
    if s > threshold:
        return 'color:{0}; font-weight:bold'.format('red')
    else:
        return ''

#Tried
t1.style.applymap(t2.applymap(color_cells))

В идеале в t1, где соответствующие ячейки в t2> 0.5, тогда значения в t1 выделены красным цветом.

Однако я не уверен, какой шаблон следует использовать для получения желаемого эффекта.

1 Ответ

0 голосов
/ 01 мая 2019

Вы были почти там, вам нужно использовать функцию apply с лямбда-кодом, чтобы перебирать ячейки.

t1.style.apply(lambda x: t2.applymap(color_cells), axis=None)

...