打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Python in Excel实战体验!

Python加入Excel已经有一阵子,之前因为没有好用的编辑器,一直也没怎么用,最近ExcelLabs插件更新,添加了Python编辑器总算有智能提示了,一起来实战体验一下!

▍功能开启

Excel365版本,在顶端搜索框中输入体验,点击【Microsoft 365预览体验计划】

选择加入【Beta版本通道】,点击确定!

Excel更新到最新版本,应该就可以在【公式】选项卡下看到Python相关功能组了!

下面我们来体验一下!

▍代码编辑器

点击【Excel 中的Python】或者直接在单元格中输入【=py】回车!

都可以看到下面的效果,然后就可以输入代码,使用【Ctrl+Enter】提交执行!

不过这个代码编辑体验非常差,习惯VSCODE、Pycharm的同学估计到这里直接不会写了,因为他基本没有什么智能提示!

所以我们换个工具!在加载项中,找到Excel Labs,添加!

在【开始】选项卡下就可以看到Excel Labs,点击使用!

常用的话,就勾选【Make Default】这样每次打开都是默认Python编辑器!

▍用起来

Excel单元格区域如何和Python关联起来呢?这个问题,微软加入了一个

xl函数,在我们选择单元格时会自动生成!第二参数headers 设置为True表示首行是标题,只写第一参数或者设置第二参数设置为False,都表示没有标题!

他的结果是一个Pandas中的DataFrame对象,所以大家学习Pandas库就行啦!

默认显示的是对象,可以通过点击图层按钮,切换为Excel值即可显示内容到单元格中!

▍实战案例

终于可以上手写点代码试试了!先做一个分组聚合吧,这也是算我们的常见需求了!
▼ 智能提示比较友好

の案例1:按姓名聚合成绩
df = xl('A1:B16', headers=True)df.groupby('姓名').sum().reset_index()
是不是非常简单!
の案例2:新增一列考试次数(累计)
是不是特别简单,当然这里我们也可以遵循Python的注释原则进行注释
#+注释内容,对代码进行一定的注释说明!
# 添加一列 ;E精精提示df = xl('A1:B16', headers=True)df['考场次数'] = df.groupby('姓名').cumcount()+1

の案例3:按姓名 和考试次数透视
功能和透视表一样,只是结果显示略有不同!
df = xl('H2#', headers=True)pd.pivot_table(df, index=['姓名'], aggfunc=sum, columns=['考试次数'],fill_value='').reset_index(['姓名'])
更多关于Pandas的案例就不讲了,基本常见的数据分析需求都没有问题!
下面再看一下,Python的一些基础功能支持!

の案例4正则体验
我们也可以导入部分模块来使用,内置的模块都可以使用,比如Excel中目前没有正则函数,这个可以弥补一下这个短板!
import rere.findall(r'\d+\.\d+|\d+',xl('A1'))

の案例5:定义函数及调用
我们可以利用python相关知识定义函数,并调用!
更多功能大家慢慢探索!目前支持的第三方库有限,网络库等虽然可以导入尚不支持,微软说是安全考虑,不支持连接本地,云端计算,算是目前的一些缺陷了!
更多Python in Excel 欢迎加入学习圈,一起交流!
▼加入学习圈一起交流
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
再见 VBA!神器工具统一 Excel 和 Python
Excel支持Python后,这些问题是你需要关心和了解的
你好Python!再见Excel?
盘点一个Pandas中explode()爆炸函数应用实际案例
适合小白的Python学习大纲
使用Python进行ETL数据处理
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服