Pandas与openpyxl库的超强结合,再见,Excel!

简介: Pandas与openpyxl库的超强结合,再见,Excel!

前言

用过Pandas和openpyxl库的同学都知道,这两个库是相互互补的。Pandas绝对是Python中处理Excel最快、最好用的库,但是使用 openpyxl 的一些优势是能够轻松地使用样式、条件格式等自定义电子表格。


如果你又想轻松的使用Pandas处理Excel数据,又想为Excel电子表格添加一些样式,应该怎么办呢?


但是您猜怎么着,您不必担心挑选。


事实上,openpyxl 支持将数据从 Pandas DataFrame 转换为工作簿,或者相反,将 openpyxl 工作簿转换为 Pandas DataFrame。

DataFrame转工作簿

我们先创建一个DataFrame:


import pandas as pd
data = {
    "姓名": ["张三", "李四"],
    "性别": ["男", "女"],
    "年龄": [15, 25],
}
df = pd.DataFrame(data)
df


结果如下:

image.png

如果想要给表头设置为红色字体,并居中,应该如何设置呢?


from openpyxl import Workbook
from openpyxl.utils.dataframe import dataframe_to_rows
from openpyxl.styles import Font 
from openpyxl.styles import Alignment 
wb = Workbook()
ws = wb.active
for row in dataframe_to_rows(df, index=False, header=True):
    ws.append(row)
font = Font(name="微软雅黑",size=10, bold=True,italic=False,color="FF0000")
alignment = Alignment(horizontal="center",vertical="center")
for i in range(1,df.shape[1]+1):
    cell = ws.cell(row=1, column=i)
    print(cell.value)
    cell.font = font
    cell.alignment = alignment
wb.save("pandas.xlsx")


结果如下:

image.png


工作簿转DataFrame

如果有这样一份数据,我们想将其转换为DataFrame,应该怎么做?

image.png

其实这个有点多此一举,我们直接使用pandas读取后,处理完数据,在进行样式设计不就行了吗?为何一开始非要使用openpyxl读取工作簿呢?


哈哈,但是既然openpyxl中提供了这种方法,我们就来看看。


import pandas as pd
from openpyxl import load_workbook
workbook = load_workbook(filename="df_to_openpyxl.xlsx")
sheet = workbook.active
values = sheet.values
df = pd.DataFrame(values)   
df


结果如下:

image.png

相关文章
|
Python
使用OpenPyXL库实现Excel单元格其他对齐方式设置
本文介绍了如何使用Python的`openpyxl`库设置Excel单元格中的文本对齐方式,包括文本旋转、换行、自动调整大小和缩进等,通过具体示例代码展示了每种对齐方式的应用方法,适合需要频繁操作Excel文件的用户学习参考。
660 85
使用OpenPyXL库实现Excel单元格其他对齐方式设置
|
数据可视化 Python
使用OpenPyXL在Excel中创建折线图:数据可视化入门
本文介绍了如何使用Python的`openpyxl`库在Excel中创建折线图,包括安装库、加载Excel文件、定义数据范围、设置图表属性(如标题、轴标签)及保存文件等步骤,适合数据可视化初学者。
830 15
|
BI Python
利用OpenPyXL实现Excel条件格式化
本文介绍如何使用Python的`openpyxl`库为Excel文件添加条件格式,包括颜色渐变、图标集、数据条及基于公式的规则等,提升数据可读性和美观度。通过具体示例,展示了从安装库、加载文件到应用各种条件格式的详细过程,最后保存修改后的文件。
667 12
|
数据可视化 数据处理 Python
使用Pandas实现Excel中的数据透视表功能
本文介绍了如何使用Python的Pandas库实现Excel中的数据透视表功能,包括环境准备、创建模拟销售数据、代码实现及输出等步骤。通过具体示例展示了按地区和销售员汇总销售额的不同方法,如求和、平均值、最大值等,帮助读者掌握Pandas在数据处理上的强大能力。
521 12
|
Java BI API
Java Excel报表生成:JXLS库的高效应用
在Java应用开发中,经常需要将数据导出到Excel文件中,以便于数据的分析和共享。JXLS库是一个强大的工具,它基于Apache POI,提供了一种简单而高效的方式来生成Excel报表。本文将详细介绍JXLS库的使用方法和技巧,帮助你快速掌握Java中的Excel导出功能。
583 6
|
数据格式 UED
记录一次NPOI库导出Excel遇到的小问题解决方案
【11月更文挑战第16天】本文记录了使用 NPOI 库导出 Excel 过程中遇到的三个主要问题及其解决方案:单元格数据格式错误、日期格式不正确以及合并单元格边框缺失。通过自定义单元格样式、设置数据格式和手动添加边框,有效解决了这些问题,提升了导出文件的质量和用户体验。
1068 3
|
数据采集 数据可视化 数据处理
Python数据科学:Pandas库入门与实践
Python数据科学:Pandas库入门与实践
|
数据采集 数据可视化 数据挖掘
Python数据分析:Pandas库实战指南
Python数据分析:Pandas库实战指南
|
5月前
|
Java 数据处理 索引
(Pandas)Python做数据处理必选框架之一!(二):附带案例分析;刨析DataFrame结构和其属性;学会访问具体元素;判断元素是否存在;元素求和、求标准值、方差、去重、删除、排序...
DataFrame结构 每一列都属于Series类型,不同列之间数据类型可以不一样,但同一列的值类型必须一致。 DataFrame拥有一个总的 idx记录列,该列记录了每一行的索引 在DataFrame中,若列之间的元素个数不匹配,且使用Series填充时,在DataFrame里空值会显示为NaN;当列之间元素个数不匹配,并且不使用Series填充,会报错。在指定了index 属性显示情况下,会按照index的位置进行排序,默认是 [0,1,2,3,...] 从0索引开始正序排序行。
412 0
|
5月前
|
Java 数据挖掘 数据处理
(Pandas)Python做数据处理必选框架之一!(一):介绍Pandas中的两个数据结构;刨析Series:如何访问数据;数据去重、取众数、总和、标准差、方差、平均值等;判断缺失值、获取索引...
Pandas 是一个开源的数据分析和数据处理库,它是基于 Python 编程语言的。 Pandas 提供了易于使用的数据结构和数据分析工具,特别适用于处理结构化数据,如表格型数据(类似于Excel表格)。 Pandas 是数据科学和分析领域中常用的工具之一,它使得用户能够轻松地从各种数据源中导入数据,并对数据进行高效的操作和分析。 Pandas 主要引入了两种新的数据结构:Series 和 DataFrame。
596 0

热门文章

最新文章