大发888dafabet

当前位置 > 大发888dafabet: > 技术热点 > 【分享】如何在 Excel 中调用 Pandas 脚本,实现数据自动化处理?

【分享】如何在 Excel 中调用 Pandas 脚本,实现数据自动化处理?

来源:中国数据分析行业网 | 时间:2021-10-11 | 作者:数据委

(以下文章来源于Python大发888dafabet:分析?,作者朱卫军)
这次我们会介绍如何使用xlwings将Python和Excel两大发888dafabet:工具进行集成,更便捷地处理日常工作。

说起Excel,那绝对是数据处理领域王者般的存在,尽管已经诞生三十多年了,现在全球仍有7.5亿忠实用户,而作为网红语言的Python,也仅仅只有700万的开发人员。

Excel是全世界最流行的编程语言。对,你没看错,自从微软引入了LAMBDA定义函数后,Excel已经可以实现编程语言的算法,因此它是具备图灵完备性的,和JavaScript、Java、Python一样。

虽然Excel对小规模数据场景来说是刚需利器,但它面对大发888dafabet:时就会有些力不从心。

我们知道一张Excel表最多能显示1048576行和16384列,处理一张几十万行的表可能就会有些卡顿,当然你可以使用VBA进行数据处理,也可以使用Python来操作Excel。

这就是本文要讲到的主题,Python的第三方库-xlwings,它作为Python和Excel的交互工具,让你可以轻松地通过VBA来调用Python脚本,实现复杂的数据分析。

比如说自动导入数据:

或者随机匹配文本:

一、为什么将Python与Excel VBA集成?

VBA作为Excel内置的宏语言,几乎可以做任何事情,包括自动化、数据处理、分析建模等等,那为什么要用Python来集成Excel VBA呢?主要有以下三点理由:

    1. 如果你对VBA不算精通,你可以直接使用Python编写分析函数用于Excel运算,而无需使用VBA;
    1. Python相比VBA运行速度更快,且代码编写更简洁灵活;
    1. Python中有众多优秀的第三方库,随用随取,可以节省大量代码时间;

 

对于Python爱好者来说,pandas、numpy等数据科学库用起来可能已经非常熟悉,如果能将它们用于Excel数据分析中,那将是如虎添翼。

二、为什么使用xlwings?

Python中有很多库可以操作Excel,像xlsxwriter、openpyxl、pandas、xlwings等。

但相比其他库,xlwings性能综合来看几乎是最优秀的,而且xlwings可以实现通过Excel宏调用Python代码。

图片来自早起Python

xlwings的入门使用这里不多做讲解,如果大家还不了解,先看看我之前写的入门介绍: