Excel小能手们,如何让自己数据分析及汇报的能力再上一层楼?

Excel小能手们,如何让自己数据分析及汇报的能力再上一层楼?

如果您是高级Excel用户,您可能使用过VBA来创建宏和自动化重复任务,或者使用Power Query来清理和转换数据。

它们是很好的工具,但当涉及到创建自定义自动化和快速处理大型数据时,Microsoft Excel是不够的。

这时您需要一种类似Python的编程语言。

Python有数百个库,使数据操作、分析和报告的自动化成为可能。Python不仅可以帮助您完成Excel任务,还可以帮助您完成更复杂的任务。

在本文中,我将展示Excel用户从头开始使用Python的最佳方法,并向您介绍3个Python库,它们可以帮助您将数据分析和Excel报告提升到一个新的层次。如果你想了解更多关于数据分析的相关内容,可以阅读以下这些文章:
一篇文章带你了解探索性数据分析
8 种数据挖掘技术,让你成为更好的数据分析师
Python为什么这么火?如何利用Python进行数据分析?
20个常用函数——用Excel做数据分析

1 学习Python和Pandas以更好地进行数据分析

Python是一种流行的语言,有许多应用领域。其中一个应用是数据分析。我们可以使用名为Pandas的库进行数据分析。

Pandas被称为“类固醇上的Excel”,因为您可以在Microsoft Excel中完成大部分任务,但需要Python的强大功能。这意味着我们可以清理和整理大型数据集,并生成数据透视表和图表,而不会出现性能问题。不同之处在于,在Pandas中,我们使用Dataframe,而在Excel中,我们使用工作表。

以下是Python/Pandas相对于Excel的一些优势:

  • Excel可以处理100万行。Python可以处理数百万行
  • Python可以处理复杂的计算,而同样的运算则可能会导致Excel中的工作簿崩溃。
  • Excel中的自动化仅限于VBA和Power Query,而Python中的可能性是无限的,这要归功于它的数百个免费库。

如果您是一个Excel用户,以前从未编写过一行代码,那么过渡到Python的想法可能听起来很可怕,但考虑到您在Excel中的知识,有一些免费教程可以从头教您Python。

这里有一个免费的Python课程,供Excel用户使用,来自freeCodeCamp频道https://youtu.be/WcDaZ67TVRo。

在本课程中,您将学习Python的基本知识,如模块1中的数据类型、变量和字典,然后学习如何使用Pandas库处理模块2中的数据。了解Pandas后,您将在模块3中学习如何创建透视表和数据可视化。

本课程使用Jupyter Notebook进行教学,Jupyter Notebook是一种文本编辑器,广泛用于Python的数据分析项目中。

2 Mito库:如果你可以编辑Excel文件,现在就可以编写Python代码了

如果您想拥有Python的强大功能和Microsoft Excel的简单性,您应该尝试使用Mito库。

Mito是Python内部的电子表格。此库可以帮助您像处理Excel工作簿一样处理Pandas Dataframe。这意味着我们不再需要编写Python代码来操作数据,而是可以使用Python通过几次单击来进行数据分析。

为了让事情变得更好,在您在Mito电子表格中所做的每一次修改之后,Mito都会为您生成Python代码。

假设您要读取CSV文件,然后绘制箱线图。对于Pandas,你需要使用.read_csv方法读取csv文件,然后使用.iplot(kind=’box’)方法创建箱线图。

然而,使用Mito,您可以在不编写代码的情况下完成所有这一切,但是,首先,您需要使用运行以下pip命令安装它(在Jupyter Notebook和JupyterLab上,您需要在单元格中运行命令)

python -m pip install mitoinstaller
python -m mitoinstaller install

现在我们可以用下面的代码创建一个mitosheet。这就是您需要编写的所有代码!

import mitosheet
mitosheet.sheet()

如果您看到下面这样的工作表,则表示所有内容都已成功设置。现在,只需点击几下,我们就可以完成许多任务。对于本例,我将使用Google Drive上的“StudentsPerformance_id.csv”文件。

我们可以使用Mito导入此CSV文件。您只需单击“Import”按钮并选择之前下载的CSV文件。

现在,我们可以通过单击“Graph”按钮,并在“Chart Type”选项中选择“box”来创建箱线图(和其他图形),如下面的gif所示。

很棒吧!要获取用于图形的代码,请单击“Copy Graph Code”按钮。有关此库的更多信息,请查看Mito的Github 和文档。

3 使用Python和Openpyxl自动化Excel

除了数据分析之外,Python还经常用于自动化任务。使用Python,您可以自动化web,发送电子邮件、文件、文件夹,您可以随意选择!

当涉及到用Python自动化Excel时,一切皆有可能!

您可以使用Python、Pandas库和OS模块进行简单的自动化操作,例如连接多个Excel文件、更改多个文件的名称/扩展名,甚至修改文件中的数据(比如您想添加/删除一些字符)

在下面的指南中,我共享了执行此操作的Python代码(5个使用Python简化的常见Excel任务)

但这还不是全部!你可以实现更复杂的自动化,例如使用名为openpyxl的库生成Excel报告。这个库允许我们加载工作簿并对其进行操作,就像我们使用Microsoft Excel一样(但可以使用Python的强大功能)

使用Python,我们可以使创建Excel报告变得像双击文件一样简单。

不相信我?假设你需要创建一个透视表,然后向工作表中添加公式、图表和标题/副标题。好吧,您可以使用Python来完成所有这些。

首先,可以使用Pandas库创建透视表,然后使用openpyxl添加公式、图表和文本。如果您想将其提升到下一个级别,可以使用名为pyinstaller的库将Python脚本转换为可执行文件,因此每次双击可执行文件时,都会自动生成报告。

如果这听起来非常棒,那么请查看我的详细教程,了解如何使用Python、openpyxl和pandas自动化Excel报告。你还可以订阅我们的YouTube频道,观看大量大数据行业相关公开课:https://www.youtube.com/channel/UCa8NLpvi70mHVsW4J_x9OeQ;在LinkedIn上关注我们,扩展你的人际网络!https://www.linkedin.com/company/dataapplab/

原文作者:Frank Andrade
翻译作者:Chuang Zhang
美工编辑:过儿
校对审稿:Miya
原文链接:https://towardsdatascience.com