使用pandas模块解决excel表格问题:总表-已完成表=剩余未完成表
公式:总表-已完成表=剩余未完成表(基于庞大的数据)
事件:A公司管理部门要统计总表表1中剩余未完成的数据,已完成数据在生产部门手中,现根据生产部门提供的表格2,管理部门要完成从总表表1中梳理并生成一个表格3,来表示剩余未完成的数据统计。
下面开始讲解:直接开干(简单数据来说明)、分布展示(利于理解),最后给出源代码。
part1:
import pandas as pd #导入pandas模块命名为pd
pd.set_option("max_rows",6)#设置最大可现实行为6行(方便调试)
all_data=pd.read_excel("总表表1.xlsx")#打开总表表1并读取内部所有数据
all_data#展示一下效果
看到的结果如下:
part2:
part_data=pd.read_excel("已完成表2.xlsx")#打开已完成表2并读取内部所有数据
part_data#展示一下效果
效果如下:
part3:
com_data=pd.merge(all_data,part_data,left_on='CABLE NO',right_on='CABLE NO',how='left')#以总表表1作为参考对比两表的CABLE NO列
com_data#效果展示
part4:
com_datanan=com_data[com_data['result'].isnull()]#对比为NaN的结果也对应填写在对比的表格中
com_datanan
part5:
com_datanan.to_excel('剩余未完成表3.xlsx',index=False)#输出一个名为“剩余未完成表3”的表格
全部代码:
import pandas as pd #导入pandas模块命名为pd
pd.set_option("max_rows",6)#设置最大可现实行为6行(方便调试)
all_data=pd.read_excel("总表表1.xlsx")#打开总表表1并读取内部所有数据
part_data=pd.read_excel("已完成表2.xlsx")#打开已完成表2并读取内部所有数据
com_data=pd.merge(all_data,part_data,left_on='CABLE NO',right_on='CABLE NO',how='left')#以总表表1作为参考对比两表的CABLE NO列
com_datanan=com_data[com_data['result'].isnull()]#对比为NaN的结果也对应填写在对比的表格中
com_datanan.to_excel('剩余未完成表3.xlsx',index=False)#输出一个名为“剩余未完成表3”的表格
如果还有简单的方法,欢迎交流讨论学习。