使用Python在Excel 电子表格中创建可视化效果
现在可以在 Excel 中运行 Python 代码来分析数据、构建机器学习模型和创建可视化效果。
推荐:使用NSDT场景编辑器快速搭建3D应用场景
作为一名在工业界工作的数据科学家,过去的一年感觉就像是新技术突破和人工智能创新的过山车。
像ChatGPT,Notable,Pandas AI和Code Interpreter这样的工具为我节省了大量的时间来执行写作,研究,编程和数据分析等任务。
就在我认为事情不会变得更好的时候,Microsoft和Anaconda宣布将Python集成到Excel中!
现在,您可以编写 Python 代码来分析数据、构建机器学习模型以及在 Excel 电子表格中创建可视化效果。
为什么要大肆宣传Python-Excel集成?
在Excel中编写Python代码的能力将为数据科学家和分析师打开新的大门。
当我得到第一份数据科学工作时,我以为我会在Jupyter Notebooks中完成大部分工作。令我惊讶的是,我最终不得不在工作的第一天学习使用 Excel,因为高层管理人员、利益相关者和客户更喜欢解释电子表格的结果。
事实上,我过去甚至创建过 Tableau 仪表板来向客户展示结果,但由于客户更熟悉该平台,最终在 Excel 中重新构建图表。
这并非我的组织所独有。截至 2023 年,全球有超过 1 万家公司和 5 亿人使用 Excel。
许多数据从业者,像我一样,发现自己经常在Python IDE和Excel电子表格之间切换。我们使用前者来构建机器学习模型和分析数据,后者来展示我们的发现。
Python-Excel 集成将帮助我们简化工作流程,允许我们在单个平台中执行数据分析、建模和演示。
还是不服气?
让我们探讨一下这种组合的一些潜在用例。
数据科学家在Excel中使用Python的方法
以下是数据科学家可以将电子表格的功能与 Python 的大量库相结合的一些方法:
1. 数据预处理
如果我的工作中有一部分我很乐意外包,那就是数据准备。这是一项繁琐的任务,在使用本机 Excel 函数时会变得非常耗时。
通过新的Python-Excel集成,用户现在可以将Pandas等库直接导入Excel,并直接在Excel电子表格中执行高级过滤和数据聚合。
您只需在电子表格的单元格中键入“=PY”并突出显示要使用 Python 分析的数据,就会为您创建一个 Pandas 数据帧。您可以继续对这些数据进行分组和操作,就像在 Jupyter 笔记本中一样。
下面是如何在 Excel 中创建 Pandas 数据帧的示例:
2. 机器学习
虽然 Excel 提供了线性回归和图表趋势线拟合等基本工具,但大多数机器学习用例需要更复杂的建模技术,这些技术超出了 Excel 的本机功能。
通过这种Python-Excel集成,用户现在可以使用Scikit-Learn等库在Excel中构建和训练高级统计模型。模型结果可以在Excel中可视化和呈现,从而弥合了单个平台中建模和决策之间的差距。
下图展示了使用 Python 在 Excel 中构建决策树分类器是多么简单:
3. 数据分析
在Excel中分析数据的过程可能很艰苦 - 一次处理多个文件时,用户需要手动复制和粘贴数据,跨单元格拖动公式以及手动合并数据。
例如,如果我有五张月度销售数据,如下所示:
如果我想查找在一个月内售出超过 100 件的产品,我首先必须手动复制所有工作表中的数据并将其粘贴到第一张工作表中的数据下方。然后,我必须更改日期格式并创建一个数据透视表。
最后,我必须添加一个过滤器才能找到符合我的条件的产品。
每次在不同的文件或工作表中获取新的销售数据时,我都需要手动复制并粘贴它。
随着数据量的增加,此过程变得越来越困难且容易出错。
相反,可以使用以下代码行在 Python 中简化整个分析:
# 1. Merge the data
df_merged = pd.concat([df_jan, df_feb], ignore_index=True)
# 2. Convert the date format
df_merged['Date'] = pd.to_datetime(df_merged['Date']).dt.strftime('%Y-%m-%d')
# 3. Compute the total units sold for each product
grouped_data = df_merged.groupby('Product').agg({'Units Sold': 'sum'}).reset_index()
# 4. Identify products that sold more than 100 units
products_over_100 = grouped_data[grouped_data['Units Sold'] > 100]
products_over_100
每次有新数据进来时,我只需要更改一行代码并重新运行程序即可获得所需的结果。通过 Python-Excel 集成,我可以最大限度地提高效率,同时在单个平台中监督整个数据分析工作流程。
4. 数据可视化
尽管 Excel 本身提供了多种可视化选项,但该工具在您可以构建的图表类型方面仍然受到一定限制。小提琴图、热图和配对图等图表在 Excel 中不容易获得,这使得数据科学家难以表示复杂的统计关系。
运行Python代码的能力将允许Excel用户使用Matplotlib和Seaborn等库来创建更复杂,高度可定制的图表。
如何在Excel中使用Python?
在撰写本文时,Python-Excel 功能只能通过 Microsoft 365 预览体验计划获得。您需要注册并选择 Beta 频道内幕级别才能访问此功能,因为它尚未向公众推出。
加入 365 预览体验计划后,您将在“公式”选项卡中找到 Python 部分。你只需要点击“插入Python”。您可以单击它开始编写自己的 Python 代码。
或者,您只需在任何单元格中键入 =PY 即可开始。
Python-Excel集成将使数据科学民主化
随着 ChatGPT 的发布,以及代码解释器和 Notable 等插件的发布,许多曾经需要强大技术专长的任务变得更容易执行。
对于数据科学家和分析师来说尤其如此 - 您现在可以将CSV文件上传到ChatGPT,它将在您的数据集上清理,分析和构建模型。
在我看来,Python-Excel集成使我们离数据科学和分析的民主化更近了一步。
在营销和金融等领域,仅使用Excel工作的行业专家现在可以执行Python代码来分析其数据,甚至无需下载编程IDE。
在他们熟悉的界面中处理数据的能力,加上ChatGPT在编写代码方面的熟练程度,将允许非程序员执行数据科学工作流程并解决Python代码问题。
如果您是不知道如何编码的Excel用户,那么这是一个很好的机会,可以在您已经熟悉的界面中学习Python编程。
由3D建模学习工作室 整理翻译,转载请注明出处!