使用行分隔符将 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>')
结果:
我将 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>')
结果: