gpt4 book ai didi

python - pandas to_html 无值表示

转载 作者:太空宇宙 更新时间:2023-11-03 11:04:33 25 4
gpt4 key购买 nike

当我运行下面的行时,数据框中的 NaN 数字没有被修改。使用与 .to_csv() 完全相同的参数,我得到了预期的结果。 .to_html 是否需要不同的东西?

df.to_html('file.html', float_format='{0:.2f}'.format, na_rep="NA_REP")

最佳答案

看起来 float_formatna_rep 不兼容。但是,如果您将一个函数传递给 float_format 以有条件地处理您的 NaN 以及您想要的浮点格式,则可以解决此问题:

>>> df

Group Data
0 A 1.2225
1 A NaN

重现您的问题:

>>> out = StringIO()
>>> df.to_html(out,na_rep="Ted",float_format='{0:.2f}'.format)
>>> out.getvalue()

<table border="1" class="dataframe">
<thead>
<tr style="text-align: right;">
<th></th>
<th>Group</th>
<th>Data</th>
</tr>
</thead>
<tbody>
<tr>
<th>0</th>
<td> A</td>
<td>1.22</td>
</tr>
<tr>
<th>1</th>
<td> A</td>
<td> nan</td>
</tr>
</tbody>

因此您获得了正确的浮点精度,但没有获得正确的 na_rep。但以下似乎有效:

>>> out = StringIO()
>>> fmt = lambda x: '{0:.2f}'.format(x) if pd.notnull(x) else 'Ted'
>>> df.to_html(out,float_format=fmt)
>>> out.getvalue()

<table border="1" class="dataframe">
<thead>
<tr style="text-align: right;">
<th></th>
<th>Group</th>
<th>Data</th>
</tr>
</thead>
<tbody>
<tr>
<th>0</th>
<td> A</td>
<td>1.22</td>
</tr>
<tr>
<th>1</th>
<td> A</td>
<td> Ted</td>
</tr>
</tbody>
</table>

关于python - pandas to_html 无值表示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23700835/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com