如何实现两个EXCEL表格相互查找并填充相应的内容--英雄云拓展知识分享
132
2023-10-25
【摘要】 本书摘自《Python数据分析案例教程》一书中第5章,第4节,由万念斌、肖伟东、叶丰标编著。
5.4 Pandas 读写HTML文件中的数据
HTML 格式文件为网页文件,Pandas 提供 I/O API 函数 read html() 和 to html()用 于读写 HTML 格式的文件。这两个函数能较简单地将 DataFrame 数据转换为 HTML 表 格,不需要编写 HTML 代码,而会将 DataFrame 的内部结构自动转换为嵌入在表格中的
【案例5-3】读取案例5-2中的 python0.xlsx 文件 sheet1 工作表中的数据(忽略前5行 和后12行,只需要第2、3、5、6列数据),然后写入网页文件newHtml.html。 代码如下:
#encoding:utf-8
import pandas as pd
import os
def main():
os.getcwd()# 获取当前工作路径
#读取 python0.xlsx 文件工作表 sheet1的数据
table0=pd.read excel("python0. xlsx",
"sheet1",skiprows=4,
usecols=(1,2,4,5),
skipfooter=32)
table0.columns= [姓名',学号’,'平时',期末]
,table=table0.fillna(0) # 缺失值处理,将 NaN 改为0
#数据写入 newHtml.html 网页文件中
table.to html('newHtml.html')
if name ==" main ":
main()
程序运行后,得到 newHtml.html 文件,代码为:
姓名 | 学号 | 平时 | 期末 | |
---|---|---|---|---|
0 | 林洋刚 | 1521192219 | 68 | 62.0 |
27 | 刘 杰 < /td> | 1712123127 | 70 | 76.0 |
如果要使 newHtml.html 文件具有完整的网页文件框架,程序代码修改为:
#encoding:utf-8
import pandas as pd
import os
def main():
os.getcwd()# 获取当前工作路径
#读取 python0.xlsx文件工作表 sheet1的数据
table0=pd.read excel("python0.xlsx",
"sheet1",skiprows=4,
usecols=(1,2,4,5),
skipfooter=32)
table0.columns=[姓名',学号','平时',期末]
table=table0.fillna(0) # 缺失值处理,将 NaN 改为0
#数据写入 newHtml,html 网页文件中
s=[']s.append('s.append(table.to html())
s.append('')
html="join(s)
html file=open('newHtml.html','w')
html file.write(html)
html file.close()
if name ==" main ":
__ __ __ __
main()
newHtml.html 文件具有完整的框架,如:
姓 名 < /th> | 学号 | 平时 | 期末 | |
---|---|---|---|---|
0 | 林洋刚 | 1521192219 | 68 | 62.0 |
27 | 刘杰 | 1712123127 | 70 | 76.0 |
Pandas 可使用 read html()方法爬取网页表格数据,read html()函数原型为: pandas.read html(io,header=None,index col=None,skiprows=None,attrs=None,
parse dates=False,encoding=None, …)
常用的参数作用如下:
(1)io:可以是URL、HTML 文本、本地文件等。
(2)header:标题行。
(3)skiprows:跳过的行。
(4)attrs:属性,比如 attrs={'id':'table}。
(5)parse dates:解析日期。
此函数返回的结果是 DataFrame组成的 list。
【案例5-4】读取网页文件 newHtml2.html 中的数据到DataFrame 并输出。代码如下: #encoding:utf-8
import pandas as pd
import os
def main():
os.getcwd()# 获取当前工作路径
#读取 newHtml2.html 文件
df=pd.read html('newHtml2.html',encoding='gbk')
print(df)
if name ==" main ":
main()
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~