【问题标题】:Troubleshooting Latex table from pandas dataframe to_latex()从 pandas 数据帧 to_latex() 对 Latex 表进行故障排除
【发布时间】:2014-02-19 14:55:38
【问题描述】:

我无法在我的 IPython 笔记本中可视化使用来自 pandas 的 dataframe.to_latex() 生成的 Latex 表。它在框中显示带有"\begin.." 行的确切字符串。

我也很好奇为什么表格的格式为{lrrrrr},以及如何更改它的列,用线分隔值,如{l|c|c|c|c}

我不太确定我的设置是否是问题所在,我想知道是否有更多文档可以使用 pandas.dataframe.to_latex() 格式化 Latex 渲染表。我使用 IPython notebook (0.132) 和 Pandas (0.13)。我正在运行 Ubuntu 13.04,Texlive2012。

IPython Notebook 代码:

df = pd.DataFrame(np.random.random((5, 5)))
print df.to_latex()

即使在复制并作为 markdown 运行之后,IPython 笔记本输出也只会在文本周围添加一个框。

\begin{tabular}{lrrrrr}
\toprule
{} &         0 &         1 &         2 &         3 &         4 \\
\midrule
0 &  0.021896 &  0.716925 &  0.599158 &  0.260573 &  0.665406 \\
1 &  0.467573 &  0.235992 &  0.557386 &  0.640438 &  0.528914 \\
2 &  0.872155 &  0.053389 &  0.419169 &  0.613036 &  0.606046 \\
3 &  0.130878 &  0.732334 &  0.168879 &  0.039845 &  0.289991 \\
4 &  0.247346 &  0.370549 &  0.906652 &  0.228841 &  0.766951 \\
\bottomrule
\end{tabular}

我将不胜感激任何帮助,因为我对 pandas 以及它可以用 SciPy 套件做的奇妙事情还是很陌生!

【问题讨论】:

    标签: python pandas latex ipython-notebook ubuntu-13.04


    【解决方案1】:

    1) Live Notebook 不支持完整的 LaTeX,它支持数学。表不是数学。因此不呈现表格。

    2)您正在打印您的乳胶表示,因此您没有触发显示挂钩。因此,只会显示文本。

    3) 不要“选择”你喜欢的对象的表示,只需 from IPython.display import displaydisplay(object) 让 IPython 处理剩下的事情,你会在 notebok 中获得一个不错的 html 表。 to_latex, to_xls ...等对于那些知道他们在用原始数据做什么的人来说是很重要的。

    一般来说,尽量避免在同一篇文章中出现许多问题。而且 IPython 0.13.2 真的很旧,您应该考虑更新。

    【讨论】:

    • 感谢@Matt,我更新了我的 ipython。更复杂的是,我实际上是在使用所有的包来构建一个带有图形和熊猫表的 pdf。这就是 LaTeX 的用武之地。您是否知道我如何更改 .to_late() 的输出以绘制单元格之间的线条?
    • 不,我没有,我使用的 pandas 不够(我知道我应该)祝你好运。
    【解决方案2】:

    你可以使用 sympy

    import pandas as pd
    import numpy as np
    from sympy import *
    init_printing()
    df = pd.DataFrame(np.random.random((5, 5)))
    Matrix(df.as_matrix())
    

    【讨论】:

      猜你喜欢
      • 2019-01-02
      • 1970-01-01
      • 2014-07-04
      • 1970-01-01
      • 2020-10-02
      • 2011-02-07
      • 2013-11-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多