bounty还有4天到期。回答此问题可获得+50声望奖励。user3507584想要引起更多关注这个问题:使用pandas styler将数据框转换为Latex表时遇到了问题。需要帮助!:-/
我正在尝试获取以下表/ Dataframe 的latex
文件:
df = pd.DataFrame(np.random.rand(10,2)*5,
index=pd.date_range(start="2021-01-01", periods=10),
columns=["Tokyo", "Beijing"])
df.index.names = ['date']
df.reset_index(inplace=True)
对于头部的样式,我尝试使用apply_index
,如documentation所示:
def header_custom(v):
return f"background-color: blue; color:black; font-weight:bold;"
styler = df.style.apply_index(header_custom,axis="columns")
with open('temp.tex','w') as file:
file.write(styler.to_latex(hrules=True,convert_css=True,column_format="p{30mm}|m|m|M|", multirow_align="c",multicol_align="c",clines='all;data'))
代码显示错误AttributeError: 'Series' object has no attribute 'columns'
,我不明白。它与to_latex()
属性无关,因为即使删除所有这些属性也会保持相同的错误。有人知道如何使用样式器格式化标题吗?
3条答案
按热度按时间p1tboqfb1#
一个可能的解决方案(缺少
* len(v)
):输出:
tex
文件:pcrecxhr2#
使用
pandas==1.5.3
,我能够实现与PaulS相同的结果,使用官方文档中的一个示例使用的np.where
方法,指定始终为True
的条件。你能告诉我们你使用的是哪个版本的Pandas吗?icnyk63a3#
该函数是元素方面的:
您应该将其用于
styler.map_index
(以前的applymap_index
)。文档描述了不同方法之间的差异: