pandas.DataFrame.to_html#

DataFrame.to_html(buf=None, *, columns=None, col_space=None, header=True, index=True, na_rep='NaN', formatters=None, float_format=None, sparsify=None, index_names=True, justify=None, max_rows=None, max_cols=None, show_dimensions=False, decimal='.', bold_rows=True, classes=None, escape=True, notebook=False, border=None, table_id=None, render_links=False, encoding=None)[源代码]#

将 DataFrame 渲染为 HTML 表。

Parameters:
bufstr, Path 或 StringIO-like,可选,默认为 None

写入的缓冲区。如果为 None,则输出作为字符串返回。

columns类数组(array-like),可选,默认为 None

要写入的列子集。默认写入所有列。

col_spacestr 或 int,list 或 dict of int 或 str,可选

每个列的最小宽度(以 CSS 长度单位表示)。整数被假定为 px 单位。

headerbool, optional

是否打印列标签,默认为 True。

indexbool,可选,默认为 True

是否打印索引(行)标签。

na_repstr,可选,默认为 ‘NaN’

用于表示 NaN 的字符串。

formatterslist, tuple 或 dict of one-param. functions,可选

应用于列元素的格式化函数(按位置或名称)。每个函数的结果必须是 unicode 字符串。列表/元组的长度必须等于列数。

float_format单参数函数,可选,默认为 None

当列元素为浮点数时应用的格式化函数。此函数必须返回一个 unicode 字符串,并且仅应用于非 NaN 元素,NaNna_rep 处理。

sparsifybool,可选,默认为 True

对于具有分层索引的 DataFrame,设置为 False 可在每一行打印所有多级索引键。

index_namesbool,可选,默认为 True

打印索引的名称。

justifystr,默认 None

如何对齐列标签。如果为 None,则使用打印配置中的选项(由 set_option 控制),默认值为 ‘right’。有效值为:

  • left

  • right

  • center

  • justify

  • justify-all

  • start

  • end

  • inherit

  • match-parent

  • initial

  • unset。

max_rowsint, optional

控制台显示的最大行数。

max_colsint, optional

控制台显示的最大列数。

show_dimensionsbool,默认 False

显示 DataFrame 的维度(行数 x 列数)。

decimalstr, 默认为 ‘.’

被识别为十进制分隔符的字符,例如欧洲的 ‘,’。

bold_rowsbool, default True

使输出中的行标签加粗。

classesstr 或 list 或 tuple,默认为 None

应用于结果 html 表格的 CSS 类。

escapebool, default True

将 ‘<’, ‘>’, ‘&’ 字符转换为 HTML 安全序列。

notebook{True, False},默认为 False

生成的 HTML 是否用于 IPython Notebook。

borderint

<table> 标签的开头包含 border=border 属性。默认值为 pd.options.display.html.border

table_idbool, default False

如果指定,则在 <table> 标签的开头包含一个 CSS id。

render_linksbool,默认 False

将 URL 转换为 HTML 链接。

encodingstr,默认为 “utf-8”

设置字符编码。

Returns:
str 或 None

如果 buf 为 None,则返回结果作为字符串。否则返回 None。

参见

to_string

将 DataFrame 转换为字符串。

Examples

>>> df = pd.DataFrame(data={'col1': [1, 2], 'col2': [4, 3]})
>>> html_string = '''<table border="1" class="dataframe">
...   <thead>
...     <tr style="text-align: right;">
...       <th></th>
...       <th>col1</th>
...       <th>col2</th>
...     </tr>
...   </thead>
...   <tbody>
...     <tr>
...       <th>0</th>
...       <td>1</td>
...       <td>4</td>
...     </tr>
...     <tr>
...       <th>1</th>
...       <td>2</td>
...       <td>3</td>
...     </tr>
...   </tbody>
... </table>'''
>>> assert html_string == df.to_html()