我的目标是获取 Pandas 数据框,按列对其进行分组,并将列中的每个组呈现为新的 HTML 文件,最终将其转换为 PDF 文件。
使用链接问题中的示例数据:
Clothing Color Size
0 Shirt Blue M
1 Shirt Blue L
2 Shirt Black L
3 Pants Black L
4 Pants Blue XL
5 Jacket Blue L
6 Jacket Brown L
如果我不想为 中的每一项创建一个包含单独表格的 html 文件Clothing,而是想创建多个 html 文件——每个文件包含一个用于一种颜色的表格:我该怎么做?
此代码根据我选择的组(在本例中为 的唯一值)成功地将我的数据框呈现Color为具有多个表的单个 HTML 文件。
我需要扩展代码,这意味着无需df['Color']提前对 的唯一值进行硬编码。
import pandas as pd
from jinja2 import Environment
df = pd.DataFrame([('Shirt','Blue','M'), ('Shirt','Blue','L'), ('Shirt','Black','L'), ('Pants','Black','L'), ('Pants','Blue','XL'), ('Jacket','Blue','L'), ('Jacket','Brown','L')], columns=['Clothing', 'Color', 'Size'])
env = Environment()
tmpl = env.from_string( '''
{% for df_split in df_splits %}
<div>
{{df.loc[df['Color'] == df_split].to_html()}}
</div>
{% endfor %}''')
print(tmpl.render(df=df,df_splits = df['Color'].unique()))
谢谢!
凤凰求蛊
相关分类