Python使用pandas导入xlsx格式的excel文件内容操作代码


Posted in Python onDecember 24, 2022

Python使用pandas导入xlsx格式的excel文件内容

1. 基本导入

在 Python中使用pandas导入.xlsx文件的方法是read_excel()。

# coding=utf-8
import pandas as pd

df = pd.read_excel(r'G:\test.xlsx')
print(df)

Python使用pandas导入xlsx格式的excel文件内容操作代码

电脑中的文件路径默认使用\,这个时候需要在路径前面加一个r(转义符)避免路径里面的\被转义。也可以不加 r,但是需要把路径里面的所有\转换成/,这个规则在导入其他格式文件时也是一样的,我们一般选择在路径前面加r

2. 列标题与数据对齐

因为我们的表格中有中文,中文占用的字符和英文、数字占用的字符不一样,因此需要调用pd.set_option()使表格对齐显示。如果你是使用 Jupyter 来运行代码的,Jupyter 会自动渲染出一个表格,则无需这个设置。

import pandas as pd
#处理数据的列标题与数据无法对齐的情况
pd.set_option('display.unicode.ambiguous_as_wide', True)
#无法对齐主要是因为列标题是中文
pd.set_option('display.unicode.east_asian_width', True)
df = pd.read_excel(r'G:\test.xlsx')
print(df)

效果如下:

Python使用pandas导入xlsx格式的excel文件内容操作代码

3. 指定导入某个sheet

通过sheet_name参数可以指定要导入哪个sheet的内容。注意这里的名字是区分大小写的。

import pandas as pd
pd.set_option('display.unicode.ambiguous_as_wide', True)
pd.set_option('display.unicode.east_asian_width', True)
df = pd.read_excel(r'G:\test.xlsx', sheet_name='Sheet1')
print(df)

除了可以指定具体的sheet名字,还可以传入sheet的index下标,从0开始计数。例如:

# coding=utf-8
import pandas as pd
pd.set_option('display.unicode.ambiguous_as_wide', True)
pd.set_option('display.unicode.east_asian_width', True)
df = pd.read_excel(r'G:\test.xlsx', sheet_name=0)
print(df)

如果不指定sheet_name参数,那么默认导入的都是第一个sheet的内容。

4. 指定行索引

在本地文件导入DataFrame时,行索引使用的从0开始的默认索引,可以通过设置index_col参数来设置。

# coding=utf-8
import pandas as pd
pd.set_option('display.unicode.ambiguous_as_wide', True)
pd.set_option('display.unicode.east_asian_width', True)
df = pd.read_excel(r'G:\test.xlsx', sheet_name=0, index_col=0)
print(df)

Python使用pandas导入xlsx格式的excel文件内容操作代码

5. 指定列索引

将本地文件导入DataFrame时,默认使用源数据表的第一行作为列索引,也可以通过设置header参数来设置列索引。 header参数值默认为0,即用第一行作为列索引;也可以是其他行,只需要传入具体的那一行即可;也可以使用默认从0开始的数作为列索引。

使用默认从0开始的数作为列索引示意:

# coding=utf-8
import pandas as pd
pd.set_option('display.unicode.ambiguous_as_wide', True)
pd.set_option('display.unicode.east_asian_width', True)
df = pd.read_excel(r'G:\test.xlsx', sheet_name=0, header=None)
print(df)

Python使用pandas导入xlsx格式的excel文件内容操作代码

6. 指定导入列

有的时候本地文件的列数太多,而我们又不需要那么多列时,我们就可以通过设定usecols参数来指定要导入的列。

Python使用pandas导入xlsx格式的excel文件内容操作代码

从参数的形式来看,可以通过以下几种形式来指定:

  • 通过列表指定,列表中是列的下标,从0开始计数。
  • 通过列表指定,列表中是列的名字
  • 通过元组指定, 元组中是列的名字

示例如下:

df = pd.read_excel(r'G:\test.xlsx', sheet_name=0, usecols=[0,1])
print(df)

Python使用pandas导入xlsx格式的excel文件内容操作代码

df = pd.read_excel(r'G:\test.xlsx', sheet_name=0, usecols=['姓名','性别'])
print(df)

Python使用pandas导入xlsx格式的excel文件内容操作代码

df = pd.read_excel(r'G:\test.xlsx', sheet_name=0, usecols=('姓名','年龄'))
print(df)

Python使用pandas导入xlsx格式的excel文件内容操作代码

7. 指定导入的行数

如果文件很大,我们不想导入全部的行,只需要导入前面若干行进行分析即可,那么可以通过nrows参数来指定导入多少行数据

df = pd.read_excel(r'G:\test.xlsx', sheet_name=0, nrows=2)
print(df)

Python使用pandas导入xlsx格式的excel文件内容操作代码

8. 更多的参数

请参考pandas官方文档。

到此这篇关于Python使用pandas导入xlsx格式的excel文件内容的文章就介绍到这了,更多相关Python 导入xlsx格式的excel文件内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python list 合并连接字符串的方法
Mar 09 Python
Python使用Matplotlib实现Logos设计代码
Dec 25 Python
Python实现PS滤镜Fish lens图像扭曲效果示例
Jan 29 Python
tensorflow 加载部分变量的实例讲解
Jul 27 Python
对IPython交互模式下的退出方法详解
Feb 16 Python
关于PyTorch 自动求导机制详解
Aug 18 Python
使用python快速实现不同机器间文件夹共享方式
Dec 22 Python
使用PyOpenGL绘制三维坐标系实例
Dec 24 Python
Pycharm生成可执行文件.exe的实现方法
Jun 02 Python
Python Flask异步发送邮件实现方法解析
Aug 01 Python
python 统计代码耗时的几种方法分享
Apr 02 Python
Python Pandas模块实现数据的统计分析的方法
Jun 24 Python
Python 第三方库 openpyxl 的安装过程
Dec 24 #Python
python index() 与 rindex() 方法的使用示例详解
Dec 24 #Python
python+pyhyper实现识别图片中的车牌号思路详解
Dec 24 #Python
python pandas 解析(读取、写入)CSV 文件的操作方法
Dec 24 #Python
Python TypeError: ‘float‘ object is not subscriptable错误解决
Dec 24 #Python
python 使用pandas读取csv文件的方法
Dec 24 #Python
Python使用pandas导入csv文件内容的示例代码
Dec 24 #Python
You might like
关于PHP 如何用 curl 读取 HTTP chunked 数据
2016/02/26 PHP
php根据数据id自动生成编号的实现方法
2016/10/16 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
php-fpm超时时间设置request_terminate_timeout资源问题分析
2019/09/27 PHP
Javascript 键盘keyCode键码值表
2009/12/24 Javascript
js中eval详解
2012/03/30 Javascript
innerText和textContent对比及使用介绍
2013/02/27 Javascript
js中parseInt函数浅谈
2013/07/31 Javascript
jQuery实现列表自动循环滚动鼠标悬停时停止滚动
2013/09/06 Javascript
jquery数组之存放checkbox全选值示例代码
2013/12/20 Javascript
javascript使用数组的push方法完成快速排序
2014/09/15 Javascript
node.js操作mongoDB数据库示例分享
2014/11/26 Javascript
AngularJS向后端ASP.NET API控制器上传文件
2016/02/03 Javascript
JavaScript图像延迟加载库Echo.js
2016/04/05 Javascript
浅析JavaScript Array和string的转换(推荐)
2016/05/20 Javascript
javascript简易画板开发
2020/04/12 Javascript
浅析JavaScript的几种Math函数,random(),ceil(),round(),floor()
2016/12/22 Javascript
JS实现含有中文字符串的友好截取功能分析
2017/03/13 Javascript
JavaScript引用类型Array实例分析
2018/07/24 Javascript
js事件触发操作实例分析
2019/06/21 Javascript
使用vue实现各类弹出框组件
2019/07/03 Javascript
vue-video-player实现实时视频播放方式(监控设备-rtmp流)
2020/08/10 Javascript
[01:33]DOTA2上海特级锦标赛 LIQUID战队完整宣传片
2016/03/16 DOTA
python 字典中取值的两种方法小结
2018/08/02 Python
Python高斯消除矩阵
2019/01/02 Python
python gensim使用word2vec词向量处理中文语料的方法
2019/07/05 Python
python数据化运营的重要意义
2019/11/25 Python
Python创建数字列表的示例
2019/11/28 Python
python3.5的包存放的具体路径
2020/08/16 Python
Monica Vinader官网:英国轻奢珠宝品牌
2020/02/05 全球购物
成人高等教育毕业生自我鉴定
2013/10/22 职场文书
小学生读书感言
2014/02/12 职场文书
白血病募捐倡议书
2014/05/14 职场文书
2015年小学生暑假总结
2015/07/13 职场文书
如何利用STAR法则制作留学文书?
2019/08/26 职场文书
redis调用二维码时的不断刷新排查分析
2022/04/01 Redis