参考资料:
Excel+Python飞速搞定数据分析与处理,[瑞士] 费利克斯·朱姆斯坦 著,中国工信出版社、人民邮电出版社出版(“Python for Excel, by Felix Zumstein (O’Reilly). Copyright 2021 Zoomer Analytics LLC, 978-1-492-08100-5”)
将不定时持续更新!!!
本书共四个部分,该部分为第一部分,Python基础部分。
第一部分:Python入门
- 解释了Python为何适合与Excel搭配使用。
- 介绍了Anaconda Python发行版、Visual Studio Code和Jupyter笔记本等工具。
- 提供了足够的Python基础知识以帮助读者理解后续内容。
第二部分:pandas入门
- 介绍了pandas库及其在数据分析中的应用。
- 讲解了如何使用pandas和Jupyter笔记本替代Excel工作簿,以及pandas的优势。
第三部分:在Excel之外读写Excel文件
- 讲述了如何使用Python包(如pandas、OpenPyXL等)来操作Excel文件。
- 强调了无需安装Excel即可进行文件操作的优势,以及这些操作的跨平台兼容性。
第四部分:使用xlwings对Excel应用程序进行编程
- 介绍了如何使用Python和xlwings库来自动化Excel应用程序。
- 涉及了如何打开和操作Excel工作簿,以及构建交互式Excel工具。
- 讲解了如何在Python中编写用户定义函数(UDF)。
补充材料(如代码、练习等)可以在这里下载:https://github.com/fzumstein/python-for-excel
解压并复制到 C:\Users\<username>\python-for-excel 文件夹中
前言:
作者在前言中提到了目标读者,大家可以对号入座一下:
- Excel 高级用户,“Excel 高级用户”每个月都会花几小时下载、清理、复制和粘贴大量数据到关键的工作表中。
- 应对编程有基本的了解。如果你写过函数或 for 循环(无论是用哪种编程语言写的),并且明白整型和字符串是什么。无须任何针对 Python 的经验,会简要介绍我们要用到的工具,其中也包括对 Python 本身的介绍。
- 如果你是 VBA 老手,那么书中经常出现的对比 Python 和 VBA 的内容可以帮助你避开一些常见的陷阱,从而快速上手。
- 如果你是 Python 开发者,并且需要了解 Python 有哪些处理 Excel 程序和文件的方式,从而为满足商业用户的需求选择合适的软件包,那么本书也是值得一看的。
一、excel是一个编程语言
1.为什么要用Python为Excel编程
①自动化可以避免很多人为的错误,避免对重要数据的损坏
②excel与python均是编程语言,且python中的numpy等包可以进行数据运算
2.编程最佳实践
(1)关注点分离(模块化)
如下图的例子所示:(这是一个汇率转换的工具,在作者提供的github的xl文件可以获取到)
Amount输入多少钱,Currency输入这是哪种货币,输入之后就可以得到对应美金的钱。
这里,Amount和Currency就是表示层(与用户交互的部分),in USD就是业务层(应用程序的目的执行,有语法,目的是查找Currency对应货币种类的汇率值),而右侧的两列就是数据层,用来访问数据,D4的VLOOKUP就是负责这项任务。VLOOKUP的语法结构如下:
=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
各参数解释如下:
lookup_value
:这是要在表格第一列中查找的值。它可以是数值、文本字符串、单元格引用或函数返回值。table_array
:这是包含数据的单元格区域,其中第一列是要查找的值,其他列包含要返回的结果。col_index_num
:这是返回值所在的列号。例如,如果要返回第二列的值,则此参数为2。[range_lookup]
:这是一个可选参数,用于