美文网首页
插上Python送来的翅膀,会飞的EXCEL你见过吗?

插上Python送来的翅膀,会飞的EXCEL你见过吗?

作者: 小折线 | 来源:发表于2020-05-23 16:58 被阅读0次

Python和EXCEL的爱情故事,要从wlxings说起。

就像阴霾中透出阳光,wlxings让EXCEL的友好界面与python的灵活强大结合在一起,给你飞行般的体验!

今天,我们让EXCEL真正飞起来。

安装 python

  1. 下载Python,下载入口为 https://www.python.org/downloads/,用户自行选择对应操作系统的版本就可以,比如,我用的是Windows x86-64 executable installer
  2. 下载后,正常安装,保持默认项,下一步,再下一步,一直点到无处可点,你就完成了。

安装python依赖包

  1. xlwings是为Excel订制的插件,如果Python是匹奔腾桀骜的骏马,那么xlwings就是一块绝世马鞍,它可以让Excel驾驭住Python。
  2. Numpy是python中的一个科学运算库,为python提供矩阵功能,是python中科学计算的心脏
  3. Pandas是python的高级数据表模块,如果你觉得Excel的query,power pivot好用,在pandas面前,班门弄斧而已
  4. matplotlib,seaborn 是python的作图库,还有什么图是几行代码搞不定吗?

以上这些模块,为python提供了强大的动力,如果你对这些没概念,没关系,我初次接触时也是并不知道啥是啥,渐渐地,不知何时,却和他们成了老朋友

以上模块,均可通过pip安装,方法为:

  1. WIN + R, 输入 CMD,回车
  2. 输入 pip install xlwings numpy matplotlib pandas seaborn, 这一步出错请检查网络
  3. 输入 xlwings addin install, 这一步出错请参考下面:
  1. 下载文件: xlwings.xlam
  2. 安装该文件: 开发工具 Developer > Excel加载项 Excel Add-in > 浏览 Browse > 选择下载的xlwings.xlam
    如果你的EXCEL菜单栏没有 开发工具 Developer, 开启方式为 文件 File > 选项 Options > 自定义功能区 Customize Ribbon,Mac为: Cmd + , > Ribbon & Toolbar

完成这一步,我们的环境几乎OK,所有工具到齐,可以开始准备工作!如果以上步骤你看不懂,也没关系,照猫画虎,从模仿到超越,是走向成功必经之路。

创建文件并设置

  1. 创建EXCEL文件,并另存为xlsm格式(启用宏的xlsx),编写python脚本, 脚本需要与EXCEL文件同名

  2. 设置VBA项目的信任(仅需一次)
    文件 File > 选项 Options > 信任中心 Trust Center > 信任中心设置 Trust Center Settings > 宏设置 Macro Settings > 信任对VBA工程对象模型的访问

  3. 在VBA中为Xlwings 添加引用
    这一步很关键,它可以让你写的python函数,像=SUM()=AVERAGE()等原生EXCEL函数一样,在EXCEL中使用,自己编写,随处调用
    Windows: VBA editor > 工具 Tools > 引用 References..., Mac: VBA editor的左下角)

4.导入编写好的python模块

尽情调用

本文进行了简单的尝试,实现了以下功能:

  1. lmplot (seaborn)
  2. boxplot (seaborn)
  3. heatmap(seaborn)
  4. 保存图片( 6 * 6 inch, 300dpi) (开发工具 > 宏 > saveLastPlot)

所有的功能均在python脚本中定义好了,可在文末获取代码

lmplot

lmplot可以绘制散点图,并对散点进行linear regression, 这里的plotlm接受三个参数,第一个为整个数据表,第二个参数为X轴的数据,我们只需要把用于X轴的那一列数据的列名放进去就可以了,同理,第三列为Y轴数据的列名。

boxplot

boxplot可以查看不同类别的数据的分布, 这里的plotbox和plotlm一样,接受三个参数,分别为整个数据表,X轴数据的列名,Y轴数据的列名。X轴一般为某个分类,比如性别,班级,Y轴一般为某个连续变量,如成绩。这样我们方便地查看不同性别或者班级的成绩是否有差异。

Heatmap

Heatmap可以方便地查看矩阵数据, 比如我们常常需要画基因表达数据,蛋白表达数据,不同条件下的某些指标的变化等

保存图片

我写了一个 saveLastPlot函数,可以方便的储存最后一次画的图,默认参数为6 * 6 inch, 300dpi

后记

学习python以来,我一直惊讶于python语言的优雅,代码效率之高超,也一直惋惜Excel没有python的灵活和方便,这可能就是图形化界面的弱势吧。

当我看到xlwings这个插件时,有一种阴霾中透出阳光的顿悟感,这才是EXCEL的最强形态啊,EXCEL的友好界面与python的灵活强大结合在一起,坐火箭也不过如此吧!哈哈哈。利用这个工具,我们可以让EXCEL真正飞起来。

身边一直有帅哥美女问我,如何学python,python难不难之类的问题,我认为这个插件可以是一个很好的契机,可以让你在学习之初就体验到python的强大,更有坚持下去的动力和可能。

从模仿到超越,是走向成功的必经之路。

先照猫画虎学起来,在使用中发现问题,解决问题,慢慢地,你会和python成为好朋友的。

关注 肖恩札记 微信公众号,获取示例材料。

相关文章

  • 插上Python送来的翅膀,会飞的EXCEL你见过吗?

    Python和EXCEL的爱情故事,要从wlxings说起。就像阴霾中透出阳光,wlxings让EXCEL的友好界...

  • 插上翅膀,让Excel飞起来——xlwings(二)

    在上一篇插上翅膀,让Excel飞起来——xlwings(一)中提到利用xlwings模块,用python操作Exc...

  • 软件工程马佳宁No.10自我分析

    愿自己插上翅膀!飞的更好!

  • 诗三首

    鸡会飞吗 鸡会飞吗? 孩子问我 画眉会飞 鹦鹉会飞 蒲公英会飞 因为它们都有翅膀 鸡不会飞 鸡的翅膀太小,身子太重...

  • 带你去飞翔的首饰设计师——Dukno Yoon

    相信你一定见过会飞的翅膀,但你不一定见过戒指上会飞的翅膀。 设计师,Dukno Yoon,来自韩国首尔。 他从首尔...

  • 插上科学的翅膀飞

    2222年,在这个奇特的年份里人类做了一件大事。 两百年后淡水资源污染导致淡水不够人类饮用。全世界联合了起来,...

  • 插上科学的翅膀飞。

    同学们大家好!你们喜欢看科幻电影吗?孟老师特别喜欢,比如说《盗梦笔记》《流浪地球》《阿凡达》,还有《机器人总动员》...

  • 插上科学的翅膀飞

    科学朴素而美丽,纯洁而高尚,自古以来,自从瓦特改良了蒸汽机后,人们通过聪明的才智和努力,在科学上取得了一次...

  • 插上科学的翅膀飞

    我坐在课桌上,正准备写《插上科学的翅膀飞》这篇作文,突然有一个小不点来到我的面前:“你好,我来自2120年,...

  • 插上科学的翅膀飞

    23年后的一天,出现了日食现象,我认为这不是什么好事。 此时的我是“天宫”的一员。“天宫”是中国独立的航天基地,和...

网友评论

      本文标题:插上Python送来的翅膀,会飞的EXCEL你见过吗?

      本文链接:https://www.haomeiwen.com/subject/mbcsohtx.html