我在12w+的Python库中,发现了让Excel快到起飞的秘密......

数据分析1480

共 2411字,需浏览 5分钟

 ·

2020-09-08 03:32


Amber | 作者

图片源自网络




在这篇文章里,小编向大家介绍了Excel在数据分析中的妙用。不知大家在看完后,有没有亲自动手去体验下呢?有没有遇到什么问题呢?



虽说Excel在处理小批量数据时的优势显而易见,但软件终究不是万能的,完全倚靠这单单一个软件,总会有翻车的那天......



心情不好+软件无响应,简直是成年人的崩溃瞬间了...


同样,你肯定还遇到过这两种情况:


  • 软件没问题,自己有问题,日报操作太多,常常因为粗心犯错

  • 总是有些避不开的重复工作,直接化身“工具人”,效率大大降低


人无完人,更何况是个工具软件呢?但办法总比困难多,在发现了同学们的困扰后,Amber立刻向爱数据学院的主讲教师张老师进行咨询,张老师指出:



单一Excel软件的运用,早就不能满足互联网时代的数据量了,想要更好的让机器代替人工做事,快些实现Excel自动化才是重中之重。


那么如何才能实现Excel的自动化,让Excel飞起来呢?


答案就是Python+Excel的组合使用,从而发挥Excel的最大效用!



1


为什么Python能实现Excel的自动化?


你一定看过这些广告...






如今的Python广告可谓是满天飞,简单整合下市面上常见的Python广告,你会发现,学会Python,你可以...


  • 轻松绘制高颜值图表,柱状图、折线图、桑基图信手拈来

  • 掌握数据分析技能,全面提升工作效率

  • 爬取网站数据,拥有更多免费资源

  • ......


相信大家看到这些广告时都会有些疑问:这些说的都是真的吗?Python真有这么神奇?


这里Amber可以准确的告诉你:这些都是真的。



Python语言有超过12万个第三方库,覆盖信息技术几乎所有领域。这些优秀的第三方库极大的丰富了Python的功能,使许多功能不必从0编写,直接使用现成的即可。


这里Amber向大家介绍几个经常使用的第三方库。


 Numpy—数据处理 


NumPy 是一个为 Python 提供高性能向量、矩阵和高维数据结构的科学计算库。NumPy 基本上是所有使用 Python 进行数值计算的框架和包的基础,例如 TensorFlow 和 PyTorch,构建机器学习模型最基础的内容就是学会使用 NumPy 搭建计算过程。


 Matplotlib—数据可视化 


看到这个名字有没有似曾相识的感觉?没错它就是受matlab启发创建的。它拥有着和matlab一样强大的面对过程的绘图功能,是高效的数据可视化工具。


 Pandas—数据分析 


做数据分析,如果你不认识Pandas,那你一定是个假分析师!


Pandas是基于Numpy的专业数据分析工具,可以灵活高效的处理各种数据集。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。


前面这三个库作为数据科学基础库的三剑客,是大家在做数据分析工作中涉及最多的库。


而今天Amber还要给大家推荐一个第三方库Openpyxl—Excel文件处理库,这也是实现Excel自动化的最大秘诀!


 Openpyxl—Excel文件处理库 


Openpyxl是一个用于读取/编写Excel 2010 xlsx/xlsm/xltx/xltm文件的Python库。它是由于缺乏从Python中读取/编写Office Open XML格式的现有库而诞生的。


并且,Openpyxl还是一个比较综合的工具,能够同时读取和修改Excel文档。其他很多的与Excel相关的项目基本只支持读或者写Excel一种功能。


2


我们为什么选择openpyxl库?


为了更好的展现数据,你还在用鼠标疯狂点点点吗?



使用openpyxl几行代码,也可轻松绘制柱状图、折线图、区域图等



想要修改单元格样式,你还在一个个手动修改吗?



那样太慢了!openpyxl可以按照列或行整体设置样式,还可以将样式进行打包,循环使用。


(部分代码一览)

# 将样式打包命名
sty1 = NamedStyle(name='sty1', font=font1, fill=fill,
                  border=border1, alignment=alignment)
sty2 = NamedStyle(name='sty2', font=font2, border=border2, alignment=alignment)

for r in range(2, rows+1):
    for c in range(1, cols):
        if r == 2:
            ws.cell(r, c).style = sty1
        else:
            ws.cell(r, c).style = sty2

wb.save('./5a.xlsx')



表单太多,想要合并到一起,今天又要加班了......



别急,用openpyxl库只需下面这五步,即可轻松解决问题,解放你的双手,告别加班烦恼!


  • 将excel表都放在一个文件中,遍历文件夹中的所有文件

  • 将第一步遍历的excel表中的内容读取,然后保存

  • 新建一个excel表

  • 在新建的excel表中写入表头,合并单元格和字体加粗、居中

  • 将第二步中读取的内容写入新建的excel表中,然后保存


看到这里,相信你已经了解了openpyxl库的强大之处。


其实,openpyxl库的功能远多于这些,Python操作Excel的用法更是多种多样。


可以这样说,Python就是提升工作效率的宝藏语言,让你在职场体验「爽」的感觉!

浏览 40
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报