2015-11-23 5 views
5

In Pandas gibt es eine neue Styler-Option zum Formatieren von CSS (http://pandas.pydata.org/pandas-docs/version/0.17.1/generated/pandas.core.style.Styler.html).Anwenden von Zahlenformatierung auf Pandas HTML CSS-Styling

Früher, als ich wollte, dass meine Zahlen in das Rechnungswesen/Dollar machen, würde ich so etwas wie unten verwenden:

df = pd.DataFrame.from_dict({'10/01/2015': {'Issued': 200}}, orient='index') 
html = df.to_html(formatters={'Issued': format_money}) 

format_money Funktion:

def format_money(item): 
    return '${:,.0f}'.format(item) 

Jetzt möchte ich die Art verwenden, Optionen, und behalten Sie meine $ Formatierung. Ich sehe keinen Weg, dies zu tun.

Stil Formatierung zum Beispiel würde wie folgt sein: (: http://pandas.pydata.org/pandas-docs/stable/style.html Docs hier):

from http://pandas.pydata.org/pandas-docs/stable/style.html

Also im Grunde

s = df.style.bar(color='#009900') 
    #df = df.applymap(config.format_money) -- Doesn't work 
    html = s.render() 

Diese Bars zu meiner HTML-Tabelle, wie so hinzufügen würde Wie mache ich so etwas wie das Hinzufügen der Balken und behalten oder fügen Sie auch die Dollar-Formatierung zur Tabelle hinzu? Wenn ich es vorher versuche, funktionieren die Style-Balken nicht, weil sie jetzt nicht erkennen können, dass die Daten numerisch sind und dass sie fehlerhaft sind. Wenn ich es danach versuche, wird das Styling abgebrochen.

Antwort

2

Das wurde noch nicht implementiert (Version 0.17.1) - aber es gibt eine Pull-Anforderung (https://github.com/pydata/pandas/pull/11667) und sollte in 0.18 herauskommen. Für den Moment müssen Sie bei der Verwendung der Formatierer bleiben.

+0

Nun, wie würde ich die Formatierer in diesem Fall verwenden? Oder sagst du, bleibe bei der Verwendung der Formatierer in Bezug auf ich kann nicht beides? – user1610719

+1

Bleiben Sie bei der Verwendung nur der Formatierer für jetzt - Ich sehe keine Möglichkeit, dieses Problem für jetzt zu umgehen - ich denke, die '.bar' und' highlight_min', 'highlight_max' usw. sollten alle' kwargs' für die Spalten-Datenformate, könntest du dafür ein Problem auf github.com/pydata/pandas einreichen, damit die Betreuer es verfolgen können, vielleicht auch den "PR" von meiner Antwort mit dem Problem verknüpfen. –

Verwandte Themen