excel - 如何将任何类型的数据转换为python中的工作簿对象?
问题描述
我得到了一个数据,它可以是任何类型的数据,即 DataFrame、dict 或 python 中的其他东西。如何使用 python 将其转换为工作簿,而不是使用 openpyxl 中的 load_workbook。我知道使用 openpyxl.load_workboo("xx.xlsx") 可以获得一个工作簿对象,但这不是我想要的。例如,我在下面有一个日期框
import pandas as pd
df = pd.DataFrame({
"A":[1,2,3,4,5],
"B":[11,22,33,44,55],
"C":[111,222,333,444,555]
})
A B C
0 1 11 111
1 2 22 222
2 3 33 333
3 4 44 444
4 5 55 555
与其将数据框保存到excel,我想知道是否可以将数据框直接变成工作簿而不是将其保存到excel,然后使用openpyxl中的加载工作簿方法生成工作簿对象
解决方案
我不明白为什么要以两种方式创建工作簿对象,即直接转换数据框并使用加载工作簿方法。但是,openpyxl 的文档中提供了将数据框转换为工作簿对象的解决方案。 https://openpyxl.readthedocs.io/en/stable/pandas.html
from openpyxl.utils.dataframe import dataframe_to_rows
wb = Workbook()
ws = wb.active
for r in dataframe_to_rows(df, index=True, header=True):
ws.append(r)
推荐阅读
- vuetify.js - 对话框 % 屏幕高度
- jquery - 无法让 JQuery Typeahead/Autocomplete 工作(ASP.NET Core)
- r - 从另一个 data.table 中查找间隔 - 按组
- jquery - 通过 jQuery 更新的复选框未在表单提交中检查,但在屏幕上
- python - 使用 for 循环遍历列表时出现 IndexError
- c++ - 为什么我需要包括
获取 <=> 编译的标头? - python - TypeError:无法将 cuda:0 设备类型张量转换为 numpy。首先使用 Tensor.cpu() 将张量复制到主机内存
- php - 如何正确循环遍历将信息插入具有相关表的数据库的数组?
- javascript - 如何防止 React 中的默认浏览器输入验证?
- json - 将文件列表转换为 json 映射