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中列表元素转为数字的方法分析
Jun 14 Python
pyenv命令管理多个Python版本
Mar 26 Python
Window10+Python3.5安装opencv的教程推荐
Apr 02 Python
opencv python 2D直方图的示例代码
Jul 20 Python
python 定义n个变量方法 (变量声明自动化)
Nov 10 Python
Python 的AES加密与解密实现
Jul 09 Python
Python算法中的时间复杂度问题
Nov 19 Python
python 上下文管理器及自定义原理解析
Nov 19 Python
python生成大写32位uuid代码
Mar 03 Python
python matplotlib:plt.scatter() 大小和颜色参数详解
Apr 14 Python
django template实现定义临时变量,自定义赋值、自增实例
Jul 12 Python
Python生成器传参数及返回值原理解析
Jul 22 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学习笔记 [预定义数组(超全局数组)]
2011/06/09 PHP
PHP实现时间轴函数代码
2011/10/08 PHP
php中convert_uuencode()与convert_uuencode函数用法实例
2014/11/22 PHP
PHP使用PDO 连接与连接管理操作实例分析
2020/04/21 PHP
javascript 跨浏览器开发经验总结(五) js 事件
2010/05/19 Javascript
jquery 新浪网易的评论块制作
2010/07/01 Javascript
JS仿flash上传头像效果实现代码
2011/07/18 Javascript
javascript实现客户端兼容各浏览器创建csv并下载的方法
2015/03/23 Javascript
如何消除inline-block属性带来的标签间间隙
2016/03/31 Javascript
JavaScript实现相册弹窗功能(zepto.js)
2016/06/21 Javascript
JS实现商品筛选功能
2020/08/19 Javascript
input file样式修改以及图片预览删除功能详细概括(推荐)
2017/08/17 Javascript
for循环 + setTimeout 结合一些示例(前端面试题)
2017/08/30 Javascript
JavaScript数据结构之双向链表和双向循环链表的实现
2017/11/28 Javascript
完美解决axios跨域请求出错的问题
2018/02/05 Javascript
vue.js前后端数据交互之提交数据操作详解
2018/04/24 Javascript
vue移动端html5页面根据屏幕适配的四种解决方法
2018/10/19 Javascript
axios如何利用promise无痛刷新token的实现方法
2019/08/27 Javascript
[02:44]DOTA2英雄基础教程 克林克兹
2014/01/15 DOTA
python+matplotlib绘制简单的海豚(顶点和节点的操作)
2018/01/02 Python
python中利用zfill方法自动给数字前面补0
2018/04/10 Python
Python之读取TXT文件的方法小结
2018/04/27 Python
Python实现的简单读写csv文件操作示例
2018/07/12 Python
使用python PIL库实现简单验证码的去噪方法步骤
2019/05/10 Python
Python标准库shutil模块使用方法解析
2020/03/10 Python
python文件及目录操作代码汇总
2020/07/08 Python
路德维希•贝克(LUDWIG BECK)中文官网:德国大型美妆百货
2020/09/19 全球购物
教师自我鉴定
2013/12/13 职场文书
网吧消防安全责任书
2014/07/29 职场文书
小学红领巾广播稿(3篇)
2014/09/13 职场文书
2015年幼儿园安全工作总结
2015/05/12 职场文书
教师节联欢会主持词
2015/07/04 职场文书
请病假条范文
2015/08/17 职场文书
2016五一劳动节慰问信
2015/11/30 职场文书
在前女友婚礼上,用Python破解了现场的WIFI还把名称改成了
2021/05/28 Python
微信告警的zabbix监控系统 监控整个NGINX集群
2022/04/18 Servers