我正在尝试使用python和pandas输出乳胶输出中的多索引DataFrame。到目前为止,我有这个:
import pandas as pd
l = []
for a in ['1', '2', '3']:
for b in ['first', 'second']:
for c in ['one', 'two']:
x = 3.2
s = pd.Series({'a':a, 'b':b, 'c':c, 'x':x})
l.append(pd.DataFrame(s).transpose())
df = pd.concat(l, ignore_index=True)
df = df.set_index(['a', 'b', 'c'])
print(df)
print(df.to_latex())
但是,我没有预期的输出。
x
a b c
1 first one 3.2
two 3.2
second one 3.2
two 3.2
2 first one 3.2
two 3.2
second one 3.2
two 3.2
3 first one 3.2
two 3.2
second one 3.2
two 3.2
\begin{tabular}{llll}
\toprule
& & & x \\
\midrule
1 & first & one & \\
2 & second & two & 3.2 \\
\bottomrule
\end{tabular}
这是一个错误还是我错过了什么?
答案 0 :(得分:1)
我认为这可能是to_latex
中的错误。请参阅this question。
根据@ PaulH的评论,您可以执行以下操作:
df.reset_index().to_latex(index=False)
这会输出重复的行标签,所以它比理想的更混乱,但至少它会输出LaTeX中的整个表格。