2015-11-23 12 views
5

Pandalarda, CSS (http://pandas.pydata.org/pandas-docs/version/0.17.1/generated/pandas.core.style.Styler.html) biçimlendirmek için yeni bir önyükleme seçeneği vardır. Ben muhasebe/dolar bazında içine numaralarım yapmak istediğindeNumaraları biçimlendirmeyi Pandalar HTML CSS Şekillendirici'ye uygula

önce

, aşağıda gibi bir şey kullanırsınız:

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

format_money fonksiyonu:

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

Şimdi Stil kullanmak istiyorum seçenekleri ve $ biçimlendirmem. Bunu yapmanın bir yolunu görmüyorum. Yani temelde

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

: Bu yüzden böyle benim HTML tabloya çubukları eklersiniz

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

(burada Dokümanlar: http://pandas.pydata.org/pandas-docs/stable/style.html) örneğin

Stil biçimlendirme böyle bir şey olurdu çubukları eklemek ve dolar biçimlendirmesini tabloda tutmak ya da eklemek gibi bir şeyi nasıl yaparım? Daha önce yapmaya çalışırsam, Stil çubukları çalışmaz, çünkü artık verilerin sayısal olduğunu ve hata yaptıklarını söyleyemezler. Bunu sonra yapmaya çalışırsam, stili iptal eder.

cevap

2

Bu henüz uygulanmadı (sürüm 0.17.1) - ancak bunun için bir çekme isteği var (https://github.com/pydata/pandas/pull/11667) ve 0.18'de çıkmalıdır. Şimdilik, biçimlendiricileri kullanmaya devam etmelisiniz.

+0

Peki bu durumda biçimlendiricileri nasıl kullanırdım? Ya da biçimlendiricileri kullanmanın iki açıdan yapamayacağımı mı söylüyorsun? – user1610719

+1

, şimdilik sadece biçimlendiricileri kullanmaya devam ediyor - Şu an bu konu üzerinde çalışmanın bir yolunu görmüyorum - sanırım .bar' ve 'highlight_min',' highlight_max' vb. Sütun veri formatları, github.com/pydata/pandas ile ilgili bir sorun oluşturabilir, böylece bakıcılar bunu izleyebilir, belki de "PR" yi cevabımdan konuya da bağlayabilir. –