Msgstr "Есть ли способ использовать функциональность pandas.style, чтобы закрасить фактические" метки "столбца / строки? - PullRequest
0 голосов
/ 17 июня 2019

Просто регулярно использовал стилист pandas с пользовательским определением для раскраски значений в кадре данных в зависимости от некоторых условий. Работает хорошо, использовал функцию applymap. Однако теперь у меня есть проблема с тем, что я хочу запустить другое определение и раскрасить метки столбцов, которые соответствуют определенным критериям (мои метки столбцов представляют собой просто целое число от 1 до 100). У меня есть список целых чисел, которые я хочу, чтобы они были окрашены в красный цвет в метке столбца.

Есть идеи о том, как расширить функциональность стилей на фактические метки, а не на ячейки?

Я только пытался применить функции ко всему фрейму данных или конкретным столбцам, используя applymap или apply.

    """
    Takes a scalar and returns a string with
    the css property colour depending on which amino acid set it belongs to   """


    Green = ["S","T","N","Q"]
    Blue = ["K","R","H"]
    Orange = ["F","W","Y"]
    Pink = ["I","L","V","A","M"]
    Red = ["D","E"]
    Purple = ["G","P"]
    Yellow = ["C"]

    if val in Green:
        color = 'green'
        #return ['background-color: %s' if v else '' for val in is_max]
        return 'background-color: %s' % color
    if val in Blue:
        color = 'blue'
        return 'background-color: %s' % color
    if val in Orange:
        color = 'orange'
        return 'background-color: %s' % color
    if val in Pink:
        color = 'pink'
        return 'background-color: %s' % color
    if val in Red:
        color = 'red'
        return 'background-color: %s' % color
    if val in Purple:
        color = 'purple'
        return 'background-color: %s' % color
    if val in Yellow:
        color = 'Yellow'
        return 'background-color: %s' % color
    else:
        color = "white"
        return 'background-color: %s' % color

styled = c.style.applymap(amino_acid_colouring)

styled.to_excel('styled.xlsx', engine='openpyxl')```
...