Excel支持Python了,你先冷静一下
off999 2024-12-13 15:37 38 浏览 0 评论
HI,大家好,我是星光。
今天给大家聊一下这段时间很火热的Python in Excel,希望大家看完之后冷静一下,不要再天天催更了。
本期推文主要回答大家以下几个问题:
1,什么是Python in Excel
2,如何拥有它
3,如何使用它计算Excel数据
4,它的优劣是什么,函数/VBA等还有必要学吗?
1,什么是Python in Excel
前几天微软宣布在Excel中支持使用Python。Python是近几年来最流行、用户最多的编程语言,没有之一,你也许不会用它,但一定听说过它。不过目前该功能还处于灰度测试中,只有Excel 365版本的Beta部分用户可用。
2,如何加载Python功能
首先需要加入Microsoft 365预览体验计划,在搜索栏搜索关键字预览体验计划,点击「Microsoft 365预览体验计划」,在打开的对话框中勾选「为我注册以抢先体验...」,计划频道选择Beta版频道,勾选[我同意约束...」,最后单击「确定」。
关闭Excel重启,在候审1分钟~24+小时之后,在公式选项卡下,你就有可能会看到Python功能组了。
当然了,也有可能看不到。目前这个功能还处于灰度测试中,并不是人人都会被灰的…还是要看脸你看看我——懂了吧?
3,如何使用Python in Excel
微软是这么说的:Excel for Windows 中提供了 Excel 中的 Python。此功能在 Excel for Mac、Excel web 版、Excel for iPad、Excel for iPhone 或 Excel for Android 中不可用——说人话:目前最靠谱的平台是Excel for Windows,其它用不了。
除此之外,Excel中的Python是在微软云中运行的。言外之意有两个:
1,你电脑中是否安装的Python对它没有任何意义。
2,得联网。
符合以上要求之后,在单元格中输入=PY(,或者点击菜单栏中的「插入Python」命令,编辑栏就会自动转换为PY代码编辑模式了。
这个编辑模式不但简单而且极其——简陋不提供完整的语法提示功能,和盲打Python差别不大,真一个手工出细活。
环境搭载完成后就进入了数据处理的阶段,众所周知,这包含了三个过程:数据获取、数据计算和数据输出。
□如何读取数据
在PY代码编辑模式下,使用鼠标框选单元格区域,编辑栏会自动生成一个叫xl的函数,它返回Python库Pandas的一个DataFrame对象。
该函数有两个参数,第1个参数表示引用的单元格或区域,第2参数是可选的,表示是否包含标题行,True是包含,Flase不包含。
按组合键<ctrl+回车>可以结束代码输入,注意不是单纯的按回车,只按回车键是代码换行。
……这里额外说两句,很多朋友看到Excel支持Python后高兴的原因之一是,以为Excel可以调用Python异常丰富的各种包,实现抓取网页数据,读取合并各种文件的数据源…
看我忽闪忽闪的小眼神,想多了呀朋友,微软帮助文件明确说明,Py Excel无法发出网络请求或访问本地计算机上的文件和数据。它自身甚至连跨工作薄读取Excel数据的能力都没有。如果需要跨工作簿计算数据,还得先用PQ把数据引用进来…。
□如何输出数据
Py Excel代码返回的结果默认为Python对象,需要将输出模式修改为「Excel的值」才能以动态数组的形式在工作表内显示具体的数据修改方法参见下图:
□如何计算数据
Python的基本语句和常用对象,PY Excel都是支持的。比如元组、列表、字典、循环和条件语句、自定义函数和类等等。
支持类▲
除此之外,它还内置了5个常用的数据分析和可视化的库:Pandas、Numpy、matplotlib、seaborn和statsmodels。另外,使用import语句,也可以导入Anaconda 提供的其他库(但出于数据安全性的考虑,导入≠可用)
对于经常使用工作表函数解决Excel问题的朋友来说,最常用也是最重要的是Pandas。这个库有多重要呢?我说个事你就明白了。它一个库就是一个完整的数据处理体系,以至于Power Query的M函数便是借鉴了它的产物,但M函数比起Pandas本尊来相差甚远。
举几个基础小案例。
近几年来Excel工作表函数最让人诟病的问题之一,是一直没有提供分组+自定义计算方式的函数,借助Pandas的groupby语句我们可以轻松解决这类问题。
如上图所示,以下简短的代码就可以统计成绩表每个班级的人数、最高分、最低分和平均分。
df = xl("A1:C10", headers=True)
df.groupby("班级").成绩.agg(
人数 = "count",
最高分 = "max",
最低分 = "min",
平均分 = "mean"
)第1行代码使用xl函数读取数据,并将返回的DataFrame对象赋值变量df。
第2~7行代码使用groupby语句对df按班级字段分组,并统计每个分组内成绩的人数、最高分、最低分和平均分。
……
再如上图所示,以下简单的代码可以统计不同商品在不同平台最新且最低的价格和日期。
df=xl("A1:D10", headers=True)
(df.groupby(['平台','商品']).apply(lambda x:
x.sort_values(by=['日期','价格'],ascending=[0,1])
.head(1))
.droplevel([0,1])
)第1行代码读取数据。
第2~6行代码先按平台和商品字段对数据分组,然后遍历各个组内的数据,按日期和价格排序后取第一行数据。
……
工作表函数最让人诟病的问题之二,是不支持正则表达式,现在,PY Excel来了。
以下代码可以将上图中A列的数据按照数据类型拆分成三个字段。
df = xl("A1:B4",headers=True)df.数据.str.extract( "([\u4e00-\u9fa5]+)([A-Z\d\.]+)([\u4e00-\u9fa5]+)")……
虽然一直号称举例子大力士但事不过三就先这样吧,举多了伤肾而且你们也就瞎看个热闹。
打个响指,回答一下最后一个问题。
Python in Excel的优劣是什么?
——值得学吗?
先说优点吧,优点其实是显而易见的,作为当今最流行的编程语言,Python的强大毋庸置疑,人生苦短就用Python嘛。很多函数很难解决甚至无法解决的问题,换用Python往往会变得很简单。但是——
当Python以函数而非脚本的形式出现在Excel中,而且只支持微软云运行后,缺点更是显而易见的。
出于数据安全考虑(软说的),像工作表函数一样,它无法直接跨文件读取数据,也无法操作其它对象,比如说工作表/簿新建和删除、数据库的读写、邮件的收发、PPT的制作等——它实现的不是大家想象中的办公自动化脚本功能,而只是数据计算和可视化。群里有朋友问PY Excel出来后VBA是不是就淘汰了,那明显属于想多了。
在国内的环境中,微软云的传输效率大家多少了解,Py Excel号称能计算100M的数据量,但实际上计算几千行就开始噗哧噗哧大喘气了。函数十几秒VBA一刹那就可以完成的计算量,它需要花费数分钟——也未必行,计算结果经常会返回#BUSY!(我在线忙你等会的意思)。
另外,从灵活性上来说,Py Excel也远远不如Excel自身的工作表函数体系。
所以目前来看,它只是Excel处理数据的一个有益的补充,给用户多一种选择,仅此而已。别沸腾Excel又革命了,先做个合格的改良派再说吧(~我是说目前啊)。
如果你会Python,我想不出你有什么理由一定要在Excel里写Python——编辑器极其简陋,计算效率属实不给力,跨平台能力无。
如果你不会Python,我也想不出你有什么理由会在Excel里写Python——毕竟你不会啊。
所以这个东西它深重的意义是什么?——这就需要发挥想象以及且观后效了。
图文作者:看见星光
原载:Excel星球
相关推荐
- u盘最便宜多少钱一个(u盘最低价格)
-
一般情况下,一分钱,一分货;没有又便宜,货又好的事情。1、扩容盘。扩容盘是用PC技术,在量产时运用容量优先,输入了固定的容量,但它真实的容量只有标称容量的10倍左右。512M没人要的U盘扩容成4G,它...
- 小白三步装机教程(小白三步装机法)
-
下面给大家整理了一份小白装机的详细教程,有需要的朋友们快来看看吧!1、我们下载一个小白软件,然后选择了安装win7系统。2、在下载界面,下载速度取决于您的网络您只需要耐心等待即可。3、软件下载完成后会...
- winpe下载官网下载iso(winpe.iso下载)
-
你好,以winpe装win7iso系统说明安装步骤: 1、根据教程制作好winpe启动盘,然后将下载的win7iso系统文件直接复制到U盘的GHO目录下; 2、在需要装系统的电脑上...
- 把系统装在u盘(把系统装在u盘里的缺点)
-
系统装进U盘有效的方法。1、下载并且安装好大白菜装机版,打开安装好的大白菜装机版,插入u盘等待软件成功读取到u盘之后,点击“一键制作启动u盘”进入下一步操作:2、弹出的信息提示窗口中,选择自己下载的的...
- 恢复出厂设置对电脑有影响吗
-
电脑恢复出厂设置,对系统没有影响,原因如下:1、系统还原是电脑在使用中的一种正常运作,不还原电脑无法正常运行,系统还原是对电脑的维护,不会对电脑或系统造成损害。2、系统还原是一次大容量的数据读写、清除...
- 注册邮箱163免费登录入口官网
-
注册网易邮箱账号步骤如下:1、在浏览器的地址栏输入http://email.163.com/进入网易邮箱的登录页面,点击页面下方的立即注册2、点击立即注册进入邮箱的注册页面,点击页面上面的注册字母邮箱...
- 产品密钥win10专业版激活密钥免费
-
1不存在永久激活密钥,但可以使用一些有效期长的密钥去激活Win10专业版。2Windows10的激活方式是基于数字权利,当你购买Windows10时,系统会将您电脑的硬件信息和购买记录绑定在一起...
- ghostxp系统下载怎么安装教程
-
系统之家下载的XP系统通常是一个ISO镜像文件,安装这个系统需要通过一些步骤来制作可启动安装介质并进行系统安装。以下是安装的基本步骤:准备安装介质:使用工具如Rufus或AnyBurn将下载的ISO文...
- 无线网桥监控安装方法(无线网桥怎么连接监控)
-
网桥连接无线路由器安装的设置方法如下1.主路由器上网正常,副路由器LAN口插一根网线,另一头连接电脑。主副路由器不需要用网线连接。2.电脑开机输入副路由器背面的设置地址,进入登录界面输入背面的账号密码...
- 怎么对电脑文件夹加密(怎么对电脑文件夹加密码)
-
1.右键点要加密的文件或文件夹,然后单击“属性”;2.在“常规”选项卡,点击“高级”。选中“加密内容以便保护数据”复选框;3.在加密文件夹时,系统将询问是否要同时加密它的子文件夹。要如果选择是,那它的...
- windows系统下载手机(win10下载手机)
-
OPPO手机重新下载安装系统:先备份好重要数据!然后手机连接电脑把下载的固件存入手机。然后再长按电源键十秒钟进入关机状态(可拆卸电板的需取下电板然后重新安装)。再同时按住电源键跟音量减键,进入reco...
- 电脑系统分区怎么分(电脑系统分区怎么分区)
-
分区是将硬盘分割成不同的逻辑部分,每个分区可以被视为一个独立的存储设备。通过分区,可以更好地管理数据和操作系统。要进行电脑分区,可以按照以下步骤进行:1.确定分区方案:首先需要确定分区的目的和需求。...
- 电脑显卡怎么选择(电脑显卡怎样选择)
-
以下是一些通用的方法:1.在硬件层面进行配置:首先需要确认您的主板和操作系统是否支持多GPU并行,以及您的电源是否提供足够的功率支持。在BIOS中启用多GPU选项,并安装正确的驱动程序。然后,通...
- 设置软件下载(设置软件下载入口)
-
iphone13app的下载设置1、首先,打开手机桌面的【设置】。2、在设置界面,点击【面容ID与密码】。3、这时设置了键盘锁的会要求你输入键盘锁密码进入。4、进入之后,找到【iTunesStore...
- 电脑麦克风插孔是哪个(电脑麦克风插那)
-
1.蓝色的为音频输入口。一般的电脑后面都有三个音频接口:蓝色是音频输入,绿色是音频输出,粉红色麦克风。 2.音频输入(蓝色),为外接光驱.随身听及其它音频输入设备,即可以把外部的设备声音传送至电脑...
欢迎 你 发表评论:
- 一周热门
-
-
抖音上好看的小姐姐,Python给你都下载了
-
全网最简单易懂!495页Python漫画教程,高清PDF版免费下载
-
飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx
-
Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!
-
python入门到脱坑 输入与输出—str()函数
-
宝塔面板如何添加免费waf防火墙?(宝塔面板开启https)
-
Python三目运算基础与进阶_python三目运算符判断三个变量
-
(新版)Python 分布式爬虫与 JS 逆向进阶实战吾爱分享
-
失业程序员复习python笔记——条件与循环
-
系统u盘安装(win11系统u盘安装)
-
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)
