pandas.DataFrame.to_latex #

数据框。to_latex ( buf = None , * , columns = None , header = True , index = True , na_rep = 'NaN' , formatters = None , float_format = None , sparsify = None , index_names = True , bold_rows = False , column_format = None , longtable = None escape = None encoding = None decimal = '.' multicolumn = None multicolumn_format = None multirow = None caption = None label = None position = None[来源] #

将对象渲染为 LaTeX 表格、长表或嵌套表。

需要\usepackage{{booktabs}}.输出可以复制/粘贴到主 LaTeX 文档中或从带有\input{{table.tex}}.

版本 2.0.0 中进行了更改:重构为通过 jinja2 模板使用 Styler 实现。

参数
buf str,Path 或类似 StringIO,可选,默认 None

要写入的缓冲区。如果没有,则输出以字符串形式返回。

标签列列表,可选

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

header bool 或 str 列表,默认 True

写出列名称。如果给出了字符串列表,则假定它是列名的别名。

索引bool,默认 True

写入行名称(索引)。

na_rep str,默认 'NaN'

缺少数据表示。

格式化函数列表或 {{str: function}} 的字典,可选

格式化程序功能可按位置或名称应用于列的元素。每个函数的结果必须是 unicode 字符串。列表的长度必须等于列数。

float_format单参数函数或str,可选,默认None

浮点数格式化程序。例如 float_format="%.2f"float_format="{{:0.2f}}".format都会导致 0.1234 被格式化为 0.12。

稀疏布尔值,可选

对于具有分层索引的 DataFrame 设置为 False 以打印每行的每个多索引键。默认情况下,将从配置模块读取该值。

index_names bool, 默认 True

打印索引的名称。

bold_rows布尔值,默认 False

将输出中的行标签设为粗体。

column_format str,可选

列格式按照LaTeX 表格格式指定,例如 'rcl' 表示 3 列。默认情况下,“l”将用于除数字列之外的所有列,数字列默认为“r”。

longtable布尔值,可选

使用长表环境而不是表格环境。需要将 usepackage{{longtable}} 添加到您的 LaTeX 序言中。默认情况下,该值将从 pandas 配置模块中读取,如果选项为 “longtable” ,则设置为Truestyler.latex.environment

版本 2.0.0 中已更改:影响此参数的 pandas 选项已更改。

escape布尔值,可选

默认情况下,如果选项为 “latex”,将从 pandas 配置模块读取该值并将其设置为True。当设置为 False 时,可防止转义列名称中的乳胶特殊字符。styler.format.escape

版本 2.0.0 中的更改:影响此参数的 pandas 选项已更改,默认值已更改为False

编码str,可选

表示输出文件中使用的编码的字符串,默认为“utf-8”。

十进制str,默认 '.'

被识别为小数点分隔符的字符,例如欧洲的“,”。

多列布尔值,默认 True

使用多列来增强多索引列。默认值将从配置模块中读取,并设置为 option styler.sparse.columns

版本 2.0.0 中已更改:影响此参数的 pandas 选项已更改。

multicolumn_format str,默认“r”

多列的对齐方式,与column_format类似 ,默认会从config模块中读取,并设置为 option styler.latex.multicol_align

版本 2.0.0 中的更改:影响此参数的 pandas 选项已更改,默认值“r”也已更改。

多行布尔值,默认 True

使用多行来增强多索引行。需要将 usepackage{{multirow}} 添加到您的 LaTeX 序言中。将在包含的行上打印居中标签(而不是顶部对齐),通过斜线分隔组。默认值将从 pandas 配置模块中读取,并设置为 option styler.sparse.index

版本 2.0.0 中的更改:影响此参数的 pandas 选项已更改,默认值也已更改为True

标题str 或元组,可选

元组(full_caption,short_caption),结果为\caption[short_caption]{{full_caption}};如果传递单个字符串,则不会设置短标题。

标签str,可选

\label{{}}要放置在输出中的 LaTeX 标签。这\ref{{}}在主文件中使用.tex

位置str,可选

表的 LaTeX 位置参数,放置 \begin{{}}在输出中的后面。

返回
字符串或无

如果 buf 为 None,则以字符串形式返回结果。否则返回 None。

也可以看看

io.formats.style.Styler.to_latex

使用条件格式将 DataFrame 渲染为 LaTeX。

DataFrame.to_string

将 DataFrame 渲染为控制台友好的表格输出。

DataFrame.to_html

将 DataFrame 渲染为 HTML 表。

笔记

从 v2.0.0 开始,此方法已更改为使用 Styler 实现作为Styler.to_latex()jinja2孔模板的一部分。这意味着这jinja2是一个要求,并且需要安装才能使此方法发挥作用。建议用户改用 Styler,因为该实现更新更频繁,并且输出具有更大的灵活性。

例子

将通用 DataFrame 转换为 LaTeX,并格式化:

>>> df = pd.DataFrame(dict(name=['Raphael', 'Donatello'],
...                        age=[26, 45],
...                        height=[181.23, 177.65]))
>>> print(df.to_latex(index=False,
...                   formatters={"name": str.upper},
...                   float_format="{:.1f}".format,
... ))  
\begin{tabular}{lrr}
\toprule
name & age & height \\
\midrule
RAPHAEL & 26 & 181.2 \\
DONATELLO & 45 & 177.7 \\
\bottomrule
\end{tabular}