python读取excel数据的详细教学

 更新时间:2026年01月08日 09:52:53   作者:数开小羊  
在Python中读取Excel数据是一个常见的数据处理任务,本文主要为大家详细介绍了如何使用Python读取Excel数据,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下

前言

在Python中读取Excel数据是一个常见的数据处理任务。通过pandas库,你可以轻松地读取、分析和操作Excel文件。以下是如何使用Python读取Excel数据的详细讲解。

一、准备工作

在开始之前,确保已安装pandas库以及Excel文件处理的依赖库openpyxl。你可以使用以下命令安装这些库:

pip install pandas openpyxl

二、读取Excel文件的基本步骤

使用pandas库中的read_excel()函数可以轻松读取Excel文件。以下是该函数的基本用法。

import pandas as pd

# 读取Excel文件
df = pd.read_excel('example.xlsx')

read_excel()函数的基本参数

  • filepath: 要读取的Excel文件的路径,支持相对路径和绝对路径。
  • sheet_name: 指定要读取的工作表(Sheet)。可以是工作表名称、索引(从0开始),或者是None(读取所有工作表)。
  • header: 指定数据表头的行号,默认是0(第一行作为表头)。
  • usecols: 指定要读取的列,可以是列名列表或列索引列表。
  • skiprows: 跳过文件开头的行数(通常用于跳过不需要的行,如文件说明)。

三、详细示例

3.1 读取指定工作表

如果Excel文件中有多个工作表,你可以指定要读取的工作表名称或索引。

# 读取名为 "Sheet2" 的工作表
df = pd.read_excel('example.xlsx', sheet_name='Sheet2')

# 读取索引为1的工作表(第二个工作表)
df = pd.read_excel('example.xlsx', sheet_name=1)

3.2 读取特定列和行

可以使用usecols参数读取特定的列,使用skiprows参数跳过某些行。例如:

# 只读取A列和C列,并跳过前两行
df = pd.read_excel('example.xlsx', usecols=['A', 'C'], skiprows=2)

3.3 读取所有工作表

sheet_name设置为None,读取Excel文件中的所有工作表,并将其作为一个字典返回,键是工作表名称,值是对应的DataFrame。

# 读取所有工作表
dfs = pd.read_excel('example.xlsx', sheet_name=None)

# 访问特定工作表的数据
df_sheet1 = dfs['Sheet1']

四、数据清洗和预处理

读取Excel数据后,通常需要对数据进行清洗和预处理。pandas提供了丰富的函数来帮助你完成这些任务。

4.1 删除空值

使用dropna()函数可以删除DataFrame中的空值:

# 删除任何包含NaN的行
df_cleaned = df.dropna()

# 删除任何包含NaN的列
df_cleaned = df.dropna(axis=1)

4.2 填充空值

可以使用fillna()函数填充空值,例如用零或均值填充:

# 用0填充所有空值
df_filled = df.fillna(0)

# 用每列的均值填充空值
df_filled = df.fillna(df.mean())

4.3 更改列的数据类型

在处理Excel数据时,可能需要更改某些列的数据类型。pandas提供了astype()函数来完成这一任务:

# 将某列转换为整数类型
df['Age'] = df['Age'].astype(int)

五、导出Excel文件

处理完数据后,可以将其导出回Excel文件。pandas提供了to_excel()函数来完成这一任务。

# 导出到一个新的Excel文件
df.to_excel('output.xlsx', index=False)

导出多个工作表

可以使用ExcelWriter对象将多个DataFrame写入同一个Excel文件的不同工作表:

# 创建一个ExcelWriter对象
with pd.ExcelWriter('output.xlsx') as writer:
    df1.to_excel(writer, sheet_name='Sheet1')
    df2.to_excel(writer, sheet_name='Sheet2')

六、处理带有复杂格式的Excel文件

有时,Excel文件中可能包含合并单元格、复杂的表头等情况。你可以使用pandas的高级功能来处理这些问题。

6.1 处理合并单元格

read_excel()函数会自动处理大多数合并单元格的情况,将它们展开为普通表格。如果需要更复杂的处理,可以使用merge_cells参数(默认为True)。

6.2 处理复杂的表头

可以使用header参数指定表头所在的行,并使用skiprows跳过其他不需要的行。例如,假设你的数据从第3行开始,第1行是文件说明,第2行是表头:

# 读取数据,跳过前两行,指定第3行为表头
df = pd.read_excel('example.xlsx', header=2)

七、其他Excel文件处理库

除了pandas,还有一些其他库可以用于处理Excel文件,如openpyxlxlrdxlwt等:

  • openpyxl:可以用于读取和写入.xlsx格式的Excel文件,支持处理Excel文件的样式、图表等复杂功能。
  • xlrd:可以用于读取.xls.xlsx文件,适用于简单的读取任务(请注意,从2021年起,xlrd不再支持.xlsx格式)。
  • xlwt:用于写入.xls格式的Excel文件。

八、总结

Python通过pandas库提供了强大而灵活的Excel数据处理功能,可以轻松实现读取、清洗、分析和导出Excel数据。通过掌握这些基本和高级操作,可以极大地提升数据处理和分析的效率。

如果需要更多定制化功能,建议深入研究pandas文档和其他专用Excel处理库(如openpyxl)的功能。

到此这篇关于python读取excel数据的详细教学的文章就介绍到这了,更多相关python读取excel数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python文件相关操作和方法汇总大全

    Python文件相关操作和方法汇总大全

    这篇文章主要介绍了Python文件相关操作和方法汇总大全,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-08-08
  • python安装win32com.client的实现示例

    python安装win32com.client的实现示例

    win32com.client是Python操作Windows COM对象的模块,用于与Office交互,本文主要介绍了python安装win32com.client的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2025-06-06
  • python绘制分布折线图的示例

    python绘制分布折线图的示例

    这篇文章主要介绍了python绘制分布折线图的示例代码,帮助大家更好的利用python绘制图像,感兴趣的朋友可以了解下
    2020-09-09
  • Python使用xlrd读取Excel格式文件的方法

    Python使用xlrd读取Excel格式文件的方法

    这篇文章主要介绍了Python使用xlrd读取Excel格式文件的方法,实例分析了Python操作Excel文件的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • 获取django框架orm query执行的sql语句实现方法分析

    获取django框架orm query执行的sql语句实现方法分析

    这篇文章主要介绍了获取django框架orm query执行的sql语句实现方法,结合实例形式分析了Django框架中orm query执行的sql语句获取方法相关实现技巧,需要的朋友可以参考下
    2019-06-06
  • Python多版本安装与Jupyter Lab使用方式

    Python多版本安装与Jupyter Lab使用方式

    这篇文章主要介绍了Python多版本安装与Jupyter Lab使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • python的简单web框架flask快速实现详解

    python的简单web框架flask快速实现详解

    这篇文章主要为大家介绍了python的简单web框架flask快速实现详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • Python面向对象编程repr方法示例详解

    Python面向对象编程repr方法示例详解

    这篇文章主要介绍了Python面向对象编程repr方法的示例详解,文中附含详细的代码示例,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2021-09-09
  • 使用Python实现炫酷的数据动态图大全

    使用Python实现炫酷的数据动态图大全

    数据可视化是通过图形、图表、地图等可视元素将数据呈现出来,以便更容易理解、分析和解释,它是将抽象的数据转化为直观形象的过程,本文给大家介绍了使用Python实现炫酷的数据动态图大全,需要的朋友可以参考下
    2024-06-06
  • python中Poetry包管理工具详解

    python中Poetry包管理工具详解

    Poetry是Python的现代化一站式工具,整合了依赖管理、虚拟环境管理和打包发布功能,相比传统 pip+virtualenv,它通过声明式配置和锁文件解决依赖混乱问题,感兴趣的可以了解一下
    2025-11-11

最新评论