Python数据分析-合并数据到一张Excel表
前面学习了网站数据的爬取,网站页面会定期更新需要注意标签里的值可能会发生变化,当遇到爬取不到数据时F12可查看下标签值是否变化,有变化的更新到正则表达式里即可。
本节课的标题主要是实现文件数据的合并,用到的知识说明下:
方法pandas里面的merge() 函数
前面我们爬取了10天、30天、60天、180天的数据,但是都放在了一张表里,如何在一张表里体现多个阶段的数据呢,下面由华哥给大家码一下,特别简单,就一个方法有啥难的。
预期结果,多阶段的数据合并到一张表效果:
注意你本地需要有提前爬取的数据文件哦!
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2020/8/23 09:26 # @Author : Jianhua Wang # @Site : # @File : 合并数据.py # @Software: PyCharm import pandas as pd # 1. 读取数据 之前爬取的数据 a = pd.read_excel('10天收益率.xlsx') b = pd.read_excel('30天收益率.xlsx') c = pd.read_excel('60天收益率.xlsx') d = pd.read_excel('90天收益率.xlsx') e = pd.read_excel('180天收益率.xlsx') # 2.合并数据 按照顺序从左往右依次写入 f = pd.merge(a, b) g = pd.merge(f, c) h = pd.merge(g, d) i = pd.merge(h, e) '''merge()函数会默认以共同的列进行拼接,同时选择内(inner)连接,就是取两表共有的内容啦''' # 3.删除可能出现的重复值 i = i.drop_duplicates() # 4.导出为Excel i.to_excel('多阶段收益率.xlsx') print(i) print('多阶段收益率完成!') #完成后在一个表里合并前面文件的数据 ,最后的表可以不创建会自动创建的
测试文件:10天收益率.xlsx
30天收益率.xlsx
60天收益率.xlsx
90天收益率.xlsx
180天收益率.xlsx