如何使 pandas.style.to_latex() 输出 header 包含在 {} 中的字段?
How to make pandas.style.to_latex() output header fields enclosed in {}?
我正在通过 python/pandas 制作几个 LateX 表格。
直到最近,表格的 headers 被包含在 {}
中,没有任何明确的说明,即:
\begin{tabular}{llrrr}
{} & {date} & {x} & {y} & {z} \
{} & {(yyyy-mm-dd)} & {(s)} & {(m)} & {(kg)} \
0 & 2014-03-12 & 1 & 2 & 3 \
1 & 2014-03-13 & 4 & 5 & 6 \
\end{tabular}
但最近,pandas.style.to_latex() 的输出开始如下(没有 {}
):
\begin{tabular}{llrrr}
& date & x & y & z \
& (yyyy-mm-dd) & (s) & (m) & (kg) \
0 & 2014-03-12 & 1 & 2 & 3 \
1 & 2014-03-13 & 4 & 5 & 6 \
\end{tabular}
因为我是 post-processing python 中的这些 LateX 表格,所以我需要将 headers 包含在 {}
中
有人知道我必须为此做什么吗?
原始pandas数据帧可以通过以下方式生成:
columns = pd.MultiIndex.from_tuples(
zip(['date', 'x', 'y', 'z'],
['(yyyy-mm-dd)', '(s)', '(m)', '(kg)']))
data = [['2014-03-12', 1, 2, 3],
['2014-03-13', 4, 5, 6]]
df = pd.DataFrame(data, columns=columns)
两种方式,
df.style.to_latex(siunitx=True)
(因为 siunitx 包需要这种格式)
或
df.style.format_index("{{{0}}}", axis=1).to_latex()
(显式使用格式化函数控制输出)
我正在通过 python/pandas 制作几个 LateX 表格。
直到最近,表格的 headers 被包含在 {}
中,没有任何明确的说明,即:
\begin{tabular}{llrrr}
{} & {date} & {x} & {y} & {z} \
{} & {(yyyy-mm-dd)} & {(s)} & {(m)} & {(kg)} \
0 & 2014-03-12 & 1 & 2 & 3 \
1 & 2014-03-13 & 4 & 5 & 6 \
\end{tabular}
但最近,pandas.style.to_latex() 的输出开始如下(没有 {}
):
\begin{tabular}{llrrr}
& date & x & y & z \
& (yyyy-mm-dd) & (s) & (m) & (kg) \
0 & 2014-03-12 & 1 & 2 & 3 \
1 & 2014-03-13 & 4 & 5 & 6 \
\end{tabular}
因为我是 post-processing python 中的这些 LateX 表格,所以我需要将 headers 包含在 {}
有人知道我必须为此做什么吗?
原始pandas数据帧可以通过以下方式生成:
columns = pd.MultiIndex.from_tuples(
zip(['date', 'x', 'y', 'z'],
['(yyyy-mm-dd)', '(s)', '(m)', '(kg)']))
data = [['2014-03-12', 1, 2, 3],
['2014-03-13', 4, 5, 6]]
df = pd.DataFrame(data, columns=columns)
两种方式,
df.style.to_latex(siunitx=True)
(因为 siunitx 包需要这种格式)
或
df.style.format_index("{{{0}}}", axis=1).to_latex()
(显式使用格式化函数控制输出)