Excel支持运行Python代码,做表格也要学编程了。

admin 2024-10-08 07:54:41 0

扫一扫用手机浏览

文章目录 [+]

8 月 22 日,微软发布同 Anaconda 互助,为 Excel 带来 Python 整合。整合了 Python 后的 Excel 可以直接在单位格中运行 Python 代码,使用常用的 Python 库(例如 pandas、numpy、matplotlib 等)来进行统计学运算、画图等,乃至也可以加载一些机械进修库。

因为在云端进行运算,Python in Excel 并不要求用户在计算机上预先安装任何情况,有 Excel 法式和互联网衔接即可开端编程。今朝,Python in Excel 已经上线 Microsoft 365 Insider 的 Beta Channel(仅限 Windows 版本),作为免费预览给 Insider 们体验。我也借此机遇,打开了 Python in Excel 简单试用了一下。


Excel支持运行Python代码,做表格也要学编程了。
(图片来源网络,侵删)

Python in Excel 的上风

Python in Excel 可以办理一些以往单纯使用 Excel 可能无法做到的数据整顿、统计报表、图形绘制等问题。应用 Python 和各种常见、功效壮大的库,我们可以在 Excel 中使用 Python 直接拜访数据并形成可编纂的输出成果。

举个例子而言,应用 pandas 库的 query 功效,我们可以便利地对数据进行高档筛选,并把成果出现在 Excel 区域中。

在曩昔 Excel 自己的高档筛选功效必要我们新开一个区域,将筛选规矩写进去;但对付 pandas 而言,则是将相关的筛选要求写进代码。例如,我在整顿学生档案信息时,得到了一组学号,必要查看这些学号对应的学生信息。如使用 Excel 的高档筛选功效,我一样平常会把表头复制到另一张事情表,然后把必要的学号输入进去,再使用高档筛选选择规模。但在 Python in Excel 使用 pandas 的 query 功效,只必要敲一行代码即可。


此外,我们也可以快速在 Excel 中创立数据统计报表。例如 pandas 可以对 DataFrame 执行 describe 函数,返回一组数据的均匀数、尺度差、最年夜值、最小值,并默认依照 25% 的步长计算分度值——假如用 Excel 函数,则必要好几个函数能力形成表格;而数据及引用规模的更新,用 Python 也只不外是敲几个字母的工作。

从单位格运行 Python 代码

进级到 Beta Channel 的 Microsoft 365 后,在「公式」选项卡的明显地位即可看到「Python(预览版)」区域,此中我们可以直接向单位格插入 Python,进行重置,或者打开「诊断」窗口。点击「插入 Python」或者在运动单位格中输入=PY(,即可主动开启 Python 代码输入模式。此时,公式编纂栏左侧会呈现一个绿色配景的「PY」图标,表现当前单位格是 Python 代码内容。


与以往在 IDE 情况中使用 csv 或其他模块读取电子表格中的数据分歧的是,Python in Excel 可以直接在 Excel 事情表内经由过程 Python 代码对 Excel 表格的区域加以读取和引用,从而在必定水平上削减了我们的事情量。今朝,Python in Excel 今朝主要有以下几个方面值得存眷:

示例代码

Python in Excel 提供了好几种示例数据,包含使用 pandas、matplotlib、seaborn 等 Python 库进行各种统计阐发、画图等操作。例如,此中一种示例让我们可以使用 pandas 对一组数据进行描写性统计。


初始化

Python in Excel 提供一个默认的已经初始化的情况,这个情况中诸如 numpy、pandas 等常用的库都已经经由过程 import 声明,用户可以在单位格中直接引用,而无需每次在单位格编程的时刻再次声明。今朝,默认的初始化情况还无法改动。不外,假如你必要使用除了已经导入的库之外的 Python 库而不想每次都声明,Excel 也提供了一个办理方式,那便是在事情簿的头部新建一个事情表并在第一个单位格声明所必要的库即可 —— 事情簿一开首的事情表老是会最先执行计算。


引用 Excel 表格

Python in Excel 主要使用 pandas 库中「Series」和「DataFrame」两种类型的数据对现有的 Excel 表格进行转化,以相符在 Python 中进行数据阐发的必要。前者是一维表,后者是二维表。但除此之外,Python in Excel 也支撑 Python 所支撑的各种数据类型。在 Python in Excel 中引用 Excel 单位格、区域、表格等的方式是使用xl()函数。使用方式如下:

#将 A1:I144 规模内的 Excel 区域作为一个 DataFrame,并以 A 行笔墨作为题目行
df = xl("大众A1:I144"大众, headers=True)

#将名为「IrisDataSet5」表格内的全体数据作为一个 Data Frame,并以第一行笔墨作为题目行
df = xl(公众IrisDataSet5[#全体]公众, headers=True)

一旦引用完毕,df作为一个 DataFrame 的变量名,即可在接下来的 Python 数据阐发中使用。例如,可认为 DataFrame 重设索引、树立分类汇总、进行描写统计甚至画图,或者是读取其内部的某个数据;当然也可以经由过程列表、字典等存储和传送数据。

Python 输出

Python in Excel 的代码默认使用 Enter 键换行。假如代码已经完成,则可以使用 Ctrl+Enter 键提交。提交后,Excel 会将代码送至云端进行运算,并返回指定情势的输出。Excel 中有两种情势的输出:

Python 数据类型。这种情势的输出会在单位格中显示当前代码运行成果所输出的数据类型,如 DataFrame、List、Image 等等。


Excel 值。这种情势的输出将直接显示 Python 代码运行的成果,例如将 DataFrame 中的数据主动添补到 Excel 区域中(例如上图中 G4 单位格中的 DataFrame 主动添补到了 G4:K12 区域),或者将图表显示在 Excel 表格中。区域中的数据可以使用 Excel 的格局化功效来改动相关格局,例如字体年夜小、粗细或者是泉币单元、小数点后保存位数,等等。

Python 诊断

Python in Excel 也提供必定水平上的诊断对象。当单位格中呈现计算差错(例如 #PYTHON 差错表现代码运行失足)时,可以经由过程「诊断」窗格查看当前事情表或者整个事情簿中 Python 代码执行的问题,并提供汗青记载功效。另外,假如在 Python 代码中使用了print()函数,显示成果也会出现在这里;假如仅仅使用print()函数在 Python in Excel 中作为输出,单位格中的运算成果将会是NoneType类型。


现实体验

在 Excel 的公式栏中写代码,感觉老是有点奇异。至少在现阶段,现实的代码编纂体验是完全不如 VS Code 等成熟的 IDE 的——代码不支撑高亮、没有主动缩进,主动补全功效也另有缺失,默认编纂字体也奇奇异怪,Python 照样很必要等宽字体来验证缩进的,然而许多时刻正在编纂的代码字体和原先完全纷歧致,搞得人很焦躁。

为了整顿一份数据,我在 Python in Excel 里面写了年夜概三十行代码,进程很难说有多愉悦;不外好在诊断信息还算具体和精确,让我可以实时发当代码中的一些差错,从而顺遂完成数据整顿的事情。

不肯定上面的这些糟糕的体验会不会在之后的版本更新中获得改良。Anaconda 博客乃至 指出 ,Python in Excel 的目标并非是为开发法式所设计,用户必要专注于将其利用于数据的整顿阐发,并只管即便削减在 Python in Excel 中执行过于繁杂的代码。

the Python calculations run in the Microsoft Cloud, and your results are returned to the worksheet.

正如微软官方所说的那样,Python in Excel 的运算进程产生在云端,决议了没有收集的环境下是无法运行 Python in Excel 代码的,会呈现 #CONNECT 差错——这在必定水平上可能会对数据保密性发生影响,而且更紧张的是,在没有收集的环境下无法实时更新计算成果。

不外,可以直接在 Excel 中使用 Python 来拜访 Excel 事情簿中的数据,而且对数据进行整顿、运算、阐发、画图,并将成果直接出现在 Excel 事情簿中,或许是 Python in Excel 最有上风的一点。

此外,以往借助 Excel 公式、数据透视表等对象难以办理的数据阐发与可视化难题,应用 Python 壮大的各类库也每每可以水到渠成;也可以直接使用 Python 来界说新的函数来组合一系列 Python 操作,从而简化事情流、进步效力。

值得注意的是,Python in Excel 的提供商 Anaconda 已经推出了 专题博客页面 ,提供很多具体的教程与示例可以进修,十分值得参考。

https://sspai.com/post/82426?utm_source=wechat&utm_medium=social

作者:Kostya

责编:广陵止息

相关文章

清苑新能源车,引领绿色出行新潮流

随着全球气候变化和能源危机的日益严峻,绿色出行已成为全球共识。作为我国新能源产业的佼佼者,清苑新能源车凭借其卓越的性能和环保理念,...

家电资讯 2024-12-29 阅读5 评论0