使用行分隔符将 pandas 数据帧渲染为 HTML table

Render pandas dataframe to HTML table with row seperators

我将 pandas multi-index 渲染成 html table。

渲染时,在传递了特定索引 X 后,我想在 table 中添加分隔线。我可以通过编辑最终的 html 文件来手动执行此操作:

/* .... Index X .... */
<tr>
                <td colspan="20" class="divider"><hr /></td>
</tr>
/* .... Index Y .... */

这会产生预期的结果:

问题有什么方法可以在代码中捕获这个吗?
我想避免遍历我创建的每个 HTML table,手动添加这些行。

您可以 groupby 索引并在添加分隔符的同时遍历它:

df = pd.DataFrame({"col1":list("AABBCCA"),"unit":[1,2,1,3,4,4,6]})

for _, data in df.groupby("col1"):
    print (data.to_html())
    print ('<td colspan="20" class="divider"><hr /></td>')

结果: