格式化latex(to_latex)输出

时间:2013-02-25 14:55:22

标签: python latex pandas

我已阅读about the to_latex方法,但不清楚如何使用formatters参数

我有一些太长的数字,有些我想要千位分隔符

多索引表上to_latex方法的一侧issue,索引一起解析,并在乳胶输出中发出一些&

1 个答案:

答案 0 :(得分:19)

对于简单的数据框架。首先,没有格式化程序:

In [11]: df
Out[11]: 
              c1        c2
first   0.821354  0.936703
second  0.138376  0.482180

In [12]: print df.to_latex()
\begin{tabular}{|l|c|c|c|}
\hline
{} &        c1 &        c2 \\
\hline
first  &  0.821354 &  0.936703 \\
second &  0.138376 &  0.482180 \\
\hline
\end{tabular}

将输出([12])复制粘贴到latex,我们得到:latex without formatters

如果我们创建两个函数f1f2并将它们放入to_latex作为formatters

def f1(x):
    return 'blah_%1.2f' % x

def f2(x):
    return 'f2_%1.2f' % x

In [15]: print df.to_latex(formatters=[f1, f2])
\begin{tabular}{|l|c|c|c|}
\hline
{} &        c1 &      c2 \\
\hline
first  & blah\_0.82 & f2\_0.94 \\
second & blah\_0.14 & f2\_0.48 \\
\hline
\end{tabular}

将输出复制粘贴到latex,我们得到: latex with formatters f1 and f2

注意:格式化程序函数f1如何应用于第一列,f2应用于第二列。