在数据分析中,将数据以表格的形式呈现出来是必不可少的环节,Pandas 是一个非常强大的数据分析库,提供了很多方便的方法来处理和展示数据。今天,我们将学习如何使用 Pandas 自定义表格样式并将其导出为 HTML 格式。
通过这种方式,我们可以更好地组织和展示数据,并在网页上共享我们的分析结果,并且,掌握Pandas数据存储和表格样式自定义的方式,在日常工作过程中有更多应用和实践意义,将拓展我们的数据分析思路。
导入数据
首先,导入pandas库,并为其设置别名pd,使用pandas的read_excel函数读取指定路径下的Excel文件,并将其内容存储在DataFrame对象df中。
import pandas as pd
df = pd.read_excel(r'C:\Users\shangtianqiang\Desktop\2023年胡润百富榜.xlsx')
#默认显示DataFrame的前五行。
df.head()
df.info()显示DataFrame的简要信息,包括索引、列名、数据类型和每列的非空值数量,这里显示该数据表含有1241行数据。
#数据预览
df.info()
使用iloc方法筛选DataFrame的前100行数据。
df=df.iloc[:100,:]#筛选前100行数据
df
自定义样式
定义一个样式对象style,该对象用于生成HTML的样式,这里对筛选出来的前100行的数据进行了样式设置,它定义了一个居中的标题(h1标签),一个表格(table标签),以及表格中的表头(th标签)和单元格(td标签)。
- h1 标签:文本居中,字体大小为24像素,下边距为10像素;
- table 标签:边框合并(border-collapse: collapse;),宽度为100%;
- th, td 标签:边框为1像素的实线,内边距为8像素,文本居中;
- th 标签:背景颜色为浅灰色(#f2f2f2)。
# 定义CSS样式,添加标题“2023年胡润百富榜”
style = """
<style>
h1 {
text-align: center;
font-size: 24px;
margin-bottom: 10px;
}
table {
border-collapse: collapse;
width: 100%;
}
th, td {
border: 1px solid black;
padding: 8px;
text-align: center;
}
th {
background-color: #f2f2f2;
}
</style>
<head><title>2023年胡润百富榜</title></head>
<h1>2023年胡润百富榜</h1>
"""
将DataFrame转换为HTML代码,并添加样式,index=False来去除行索引 。
# 将DataFrame转换为HTML代码,并添加样式
html = style + df.to_html(index=False) # 使用index=False来避免显示行索引
将生成的HTML内容写入到名为'2023年胡润百富榜.html'的文件中。
# 将HTML代码写入文件或打印到控制台
with open('2023年胡润百富榜.html', 'w') as file:
file.write(html) # 将HTML代码写入文件output.html
完整版的代码如下所示。
import pandas as pd
df = pd.read_excel(r'C:\Users\shangtianqiang\Desktop\2023年胡润百富榜.xlsx')
df=df.iloc[:100,:]#筛选前100行数据
# 定义CSS样式,添加标题“2023年胡润百富榜”
style = """
<style>
h1 {
text-align: center;
font-size: 24px;
margin-bottom: 10px;
}
table {
border-collapse: collapse;
width: 100%;
}
th, td {
border: 1px solid black;
padding: 8px;
text-align: center;
}
th {
background-color: #f2f2f2;
}
</style>
<head><title>2023年胡润百富榜</title></head>
<h1>2023年胡润百富榜</h1>
"""
# 将DataFrame转换为HTML代码,并添加样式
html = style + df.to_html(index=False) # 使用index=False来避免显示行索引
# 将HTML代码写入文件或打印到控制台
with open('2023年胡润百富榜.html', 'w') as file:
file.write(html) # 将HTML代码写入文件output.html
导出的HTML表格样式如下所示,整体图表风格较为简洁。
导入数据
html的格式数据也是数据存储的一种方式,使用read_html命令可以将其很便捷地导入,从而进行接下来的数据分析。
import pandas as pd
df_html=pd.read_html('2023年胡润百富榜.html',encoding='gbk')[0]
df_html
通过学习如何使用 Pandas 自定义表格样式并将其导出为 HTML 格式,我们掌握了更丰富的数据处理和展示技巧,并且,还可以根据实际业务需求来自定义表格样式,实现与他人共享数据的目的。