编程学习网 > 编程语言 > Python > python数据分析三剑客遇上xlwings教程
2023
09-08

python数据分析三剑客遇上xlwings教程

Excel作为我们日常办公过程中必备的数据处理软件,几乎天天在用。很多python模块也对Excel提供了API支持,比如之前说过的pandas、openpyxl等都对Excel的操作提供了很好的支持。

今天介绍的这款python模块就是xlwings,相比于其他的python对Excel的数据处理模块。xlwings可以和matplotlib、numpy以及pandas(三剑客)很好的兼容。
另外xlwings也可以和Excel-VBA进行相互调用的操作,接下来我们直接进入正题。
下面给出官方的接口文档地址,供小伙伴们参考。
https://docs.xlwings.org/en/latest/


xlwings作为python的非标准模块,需要使用pip的方式安装一下该模块。

pip install xlwings
完成xlwings模块的安装之后,先来看看xlwings对与Excel的一些常规操作。下面主要通过两个部分来说明,分别是xlwings对Excel的操作、xlwings和matplotlib、numpy以及pandas(三剑客)的配合使用。

1、xlwings处理Excel数据

通过xlwings模块获取并处理Excel文档对象以及工作表,完成文件数据对象初始化。

# 导入xlwings模块
import xlwings as xlw

# 读取Excel文档数据对象
work_book = xlw.Book('/usr/local/test.xlsx')

# 获取Excel的工作表sheet对象
sheet_ = work_book.sheets["sheet1"]

# 打印工作表的绝对路径地址
print(work_book.fullname)

# 打印工作簿的名称
print(sheet_.name)
通过xlwings模块读取、写入单元格的数据值对象,完成对Excel文档中的数据操作。

# 读取当前工作表的某个单元格的内容
print(sheet_.range('A1').value)

# 写入当前工作表的某个单元格的内容
sheet_.range('A1').value = 'Python 集中营'

# 清除某个单元格的内容和格式
sheet_.range('A2').clear()

# 在某个单元格中输入Excel的计算公式
sheet_.range('A3').fornula = '=SUM(B6:B7)'

# 获取单元格中的公式
print(sheet_.range('A4').formula_array)
2、xlwings配合三剑客使用

xlwings模块支持通过numpy模块的array函数可以直接将数组的序列化数据直接写入到某个单元格中。

# 导入numpy模块,用于创建array数组
import numpy as np

# 初始化numpy模块的数组对象
array_data = np.array(('a', 'b', 'c'))

# 将array数组对象直接赋值给某个单元格
sheet_.range('A5').value = array_data

# xlwings模块支持将pandas.DataFrame数据对象直接写入到
# 某个单元格中。

# 导入pandas模块,用于处理DataFrame对象的数据
import pandas as pd

# 初始化pandas.DataFrame数据对象
data_frame = pd.DataFrame([['a', 'b'], ['c', 'd']], columns=['name', 'value'])

# pandas.DataFrame数据对象赋值给某个单元格
sheet_.range('A6').value = data_frame
也可以将某个单元格的数据直接读取并返回pandas.DataFrame数据对象。

# xlwings模块读取并返回DataFrame对象
data_frame2 = sheet_.range('A7').options(pd.DataFrame, expand='table').value

# 通过matplotib模块创建图表对象绘制,然后使用xlwings模块将图表对对象保存
# 到Excel的文件对象中。

# 导入matplotlib图表绘制模块
import matplotlib.pyplot as plt

# 创建Figure图表对象
fig_ = plt.figure()

# 绘制图表
plt.plot(['a', 'b', 'c', 'd'])

# 将Figure图表对象写入到Excel对象中
sheet_.pictures.add(fig_, name='图表', update=True)
更多关于xlwings模块的Excel操作可以前往xlwings官方网站进行查看,操作内容更加丰富。

https://www.xlwings.org/


3、2023-04-15粉丝分享排行榜
以下是4月份粉丝福利,请分享排行榜中排名第一名的小伙伴联系博主获取随机编程类书籍。


以上就是python数据分析三剑客遇上xlwings教程的详细内容,想要了解更多Python教程欢迎持续关注编程学习网。

扫码二维码 获取免费视频学习资料

Python编程学习

查 看2022高级编程视频教程免费获取