2016-08-09 45 views
2

Ich habe eine pandas dataframe, die ich in eine HTML-Tabelle mit to_html() konvertieren, aber ich möchte bestimmte Zellen basierend auf Werten in die HTML-Tabelle, die ich zurückgebe.Wie ändere ich Farbe basierend auf Wert einer HTML-Tabelle von einem PD.DataFrame generiert mit to_html

Irgendeine Idee, wie man das macht?

Beispiel: Alle Zellen in einer Spalte namens 'abc' mit einem Wert größer als 5 müssen rot else blue erscheinen.

+1

Willkommen bei Stackoverflow! Bitte geben Sie ein [minimales, vollständiges und überprüfbares Beispiel] (http://stackoverflow.com/help/mcve) Ihres Versuchs an, damit wir versuchen können, Ihr Problem zu lösen und zu erklären, warum Ihr eigener Versuch fehlgeschlagen ist - so können Sie lernen etwas nützlich für Ihre zukünftige Entwicklung, sowie eine Antwort auf dieses einzelne Problem zu bekommen. – andreas

+0

überprüfen [this] (http://pandas.pydata.org/pandas-docs/stable/style.html) – MaxU

Antwort

0

hier ist ein Weg, dies zu tun:

df = pd.DataFrame(np.random.randint(0,10, (5,3)), columns=list('abc')) 

def color_cell(cell): 
    return 'color: ' + ('red' if cell > 5 else 'green') 

html = df.style.applymap(color_cell, subset=['a']).render() 

with open('c:/temp/a.html', 'w') as f: 
    f.write(html) 

Ergebnis:

enter image description here