2013-02-15 3 views
6

Я использую pandas 'to_html для создания выходного файла, когда данные записываются в файл, у них много цифр после десятичной точки. Панды to_html метод float_format может ограничить цифры, но когда я использовал „float_format“, как показано ниже:формат выходных данных в pandas to_html

DataFormat.to_html(header=True,index=False,na_rep='NaN',float_format='%10.2f') 

это возбудит исключение:

typeError: 'str' object is not callable 

, как решить эту проблему?

ответ

10

Из to_html документов:

float_format : one-parameter function, optional 
    formatter function to apply to columns' elements if they are floats 
    default None 

Вам необходимо пройти функцию. Например:

>>> df = pd.DataFrame({"A": [1.0/3]}) 
>>> df 
      A 
0 0.333333 

>>> print df.to_html() 
<table border="1" class="dataframe"> 
    <tr> 
     <th>0</th> 
     <td> 0.333333</td> 
    </tr> 
[...] 

но

>>> print df.to_html(float_format=lambda x: '%10.2f' % x) 
<table border="1" class="dataframe"> 
[...] 
    <tr> 
     <th>0</th> 
     <td>  0.33</td> 
    </tr> 
[...] 
Смежные вопросы