pandas(1):Pandas文件读取——read_excel()
一、函数原型
pd.read_excel(io, sheet_name=0, header=0,
names=None, index_col=None,
usecols=None, squeeze=False,
dtype=None, engine=None,
converters=None, true_values=None,
false_values=None, skiprows=None,
nrows=None, na_values=None,
parse_dates=False, date_parser=None,
thousands=None, comment=None,
skipfooter=0, convert_float=True, **kwds)
二、功能说明
将Excel文件读取到pandas DataFrame中,支持本地文件系统或URL的’xls’和’xlsx’文件扩展名,带有这两种扩展名的文件,函数都可以处理。
三、常用参数说明
- io参数
io参数可以接受的有:str,Excel文件,xlrd.Book,路径对象或类似文件的对象。其中最常用的是str,一般是文件路径+文件名,需要注意的是文件名字不要漏掉后缀,即文件扩展名,表明文件类型的那个!有时候需要对路径中的”\”进行转义,io参数没有默认值,必须传入。
# jupter notebook环境中不需要对"\"进行转义
pd.read_excel(r"C:\Users\asus\Desktop\test.xlsx")
# pd.read_excel(r"C:\\Users\\asus\\Desktop\\test.xlsx")
# jupter notebook、Windows环境下,用"/"可以文件名联想
pd.read_excel(r"C:/Users/asus/Desktop/test.xlsx")
tips:要不要转义可能和编辑器、操作系统有关。建议都写成最后一种形式。
- sheet_name参数
通过sheet位置或sheet名字来指定读入哪个sheet的数据。
当一个excel工作簿中包含有很多个sheet工作表时,sheet_name用于决定导入那个sheet表单。可以接收的参数类型有:str,int,list或None,默认0。其中,str代表“工作表名称”;整数用于零索引工作表位置;字符串/整数列表用于请求多个工作表;None获取所有工作表;默认0,获取第一个工作表。
# 导入第一个工作表,索引从0开始,传参类型为int
pd.read_excel(r"C://Users//asus//Desktop/test.xlsx",sheet_name=0)
# 导入表名为“data1”的工作表,传参类型为str
pd.read_excel(r"C://Users//asus//Desktop/test.xlsx",sheet_name="data1")
# 导入第一个和第三个工作表,传参类型为int型列表
pd.read_excel(r"C://Users//asus//Desktop/test.xlsx",sheet_name=[0,2])
- header参数
指定哪一行作为列名的,默认值是0,即第1行作为列名。
接受的参数可以是:整数(指定第几行作为列名);有整数组成的列表(指定哪几行作为列名);None(没有列名,Python自动生成0始序列)
# 列名为从0开始的序列
pd.read_excel(r"C://Users//asus//Desktop/test.xlsx",header=None)
# 第3行当列名
pd.read_excel(r"C://Users//asus//Desktop/test.xlsx",header=2)
# 第3,5行当列名
pd.read_excel(r"C://Users//asus//Desktop/test.xlsx",header=[2,4])
- names参数
表示要使用的列名列表,也就是说可以自定义列名。一般传入字符型列表。默认是None。
若设置了names参数,同时也设置了header参数,此时header=n表示从第n+2行开始导入数据。
header = None和names参数都设置的话,依然会显示names指定的列名,从第一行开始导入数据。
# 从第2行开始导入数据
pd.read_excel(r"C:/Users/asus/Desktop/test.xlsx",header=0,names=["a","b","c"])
# 从第1行开始导入数据
pd.read_excel(r"C:/Users/asus/Desktop/test.xlsx",header=None,names=["a","b","c"])
index_col参数
指定用哪一列做为索引。参数接收整数,或者由整数组成的列表,默认是None。和header参数类似。
usecols参数
控制导入的哪几列(当列数过多时)。接收整数(列的位置),字符(列名称)或者类似列表的序列。如果设置了names参数,注意设置的列名个数要和读取的列数一致。
squeeze参数
接收布尔值,当取值为True的时候,如果解析的数据仅包含一列,则返回Series。默认值是False,即只有一列也返回Dataframe。
dtype参数
输入表示数据类型的名称字符或者字典,如果输入的是字符表示整个表格的数据都转换成指定的数据类型,如果输入的是字典,那么每个字段可以指定不同的数据类型。
假如整个表格中既有文本又有数值,如果要设置成统一的数据类型只能设置成字符型。
返回值:DataFrame数据框对象或Series对象(squeeze参数控制)
四、总结
参数能控制啥?哪1个或几个表(假若是多表)、哪几行或几列、数据重哪行开始导入、列名和行索引等等
pandas(1):Pandas文件读取——read_excel()的更多相关文章
- pandas read excel文件碰到的一个小问题
今天利用pandas读取excel时,爆出如下错误: 代码为: import pandas as pd db_eua=pd.read_excel('db_eua.xlsx',sheetname='EU ...
- 【繁琐工作自动化】pandas 处理 excel 文件
0. 一般处理 读取 excel 格式文件:df = pd.read_excel('xx.xlsx'),下面是一些简单查看文件内容的函数: df.head():展示前五行: df.columns:展示 ...
- Python使用xlrd、pandas包从Excel读取数据
#coding=utf-8 # pip install xlrd import xlrd def read_from_xls(filepath,index_col_list): #filepath:读 ...
- pandas处理excel文件和csv文件
一.csv文件 csv以纯文本形式存储表格数据 pd.read_csv('文件名'),可添加参数engine='python',encoding='gbk' 一般来说,windows系统的默认编码为g ...
- (数据科学学习手札63)利用pandas读写HDF5文件
一.简介 HDF5(Hierarchical Data Formal)是用于存储大规模数值数据的较为理想的存储格式,文件后缀名为h5,存储读取速度非常快,且可在文件内部按照明确的层次存储数据,同一个H ...
- 其它课程中的python---5、Pandas处理数据和读取数据
其它课程中的python---5.Pandas处理数据和读取数据 一.总结 一句话总结: 记常用和特例:慢慢慢慢的就熟了,不用太着急,慢慢来 库的使用都很简单:就是库的常用函数就这几个,后面用的时候学 ...
- [Python]-pandas模块-CSV文件读写
Pandas 即Python Data Analysis Library,是为了解决数据分析而创建的第三方工具,它不仅提供了丰富的数据模型,而且支持多种文件格式处理,包括CSV.HDF5.HTML 等 ...
- [Pandas]利用Pandas处理excel数据
Python 处理excel的第三包有很多,比如XlsxWriter.xlrd&xlwt.OpenPyXL.Microsoft Excel API等,最后综合考虑选用了Pandas. Pand ...
- Pandas之:Pandas高级教程以铁达尼号真实数据为例
Pandas之:Pandas高级教程以铁达尼号真实数据为例 目录 简介 读写文件 DF的选择 选择列数据 选择行数据 同时选择行和列 使用plots作图 使用现有的列创建新的列 进行统计 DF重组 简 ...
随机推荐
- 你真的知道typeof null的结果为什么是‘object‘吗?
到目前为止,ECMAScript 标准中定义了8种数据类型,它们分别是Undefined.Null.Number.Boolean.String.Symbol.BigInt.Object. 为了判断变量 ...
- scrapy 运行逻辑
爬虫的步骤:发送请求获得响应→解析并提取数据→保存数据 我们沿用这个朴素的逻辑去理解scrapy 一.发送请求获得响应 1.爬虫发送请求request到引擎 2.引擎将请求request传递给调度器s ...
- Scrapy 项目:QuotesBot
QuotesBot This is a Scrapy project to scrape quotes from famous people from http://quotes.toscrape.c ...
- short i=1;i=i+1;为什么报错?
先测试,看结果: 提示我们说不能将short类型的转化为int类型! 先不急着下结论,我们继续测试,用i+=1; 我们发现并没有报错,为什么同样是加1,会出现这样两种不同的结果呢? 查阅了一些资料,大 ...
- Linux的启动过程及init进程
Linux下有三个特殊进程: idle进程(pid=0)idle进程其前身是系统创建的第一个进程,0号进程,也唯一一个没有通过fork()或者kernel_thread产生的进程,由系统自动创建,运行 ...
- oracle 查看 FK constraint referenced_table及columns
select uc.table_name, uc.r_constraint_name, ucc.table_name, listagg(ucc.column_name, ',') within gro ...
- Coposition 详解
LifeCycle Hooks 在新版的生命周期函数,可以按需导入到组件中,且只能在setup()函数中使用. import { onMounted, onUnmounted } from 'vue' ...
- .NET测试--模拟框架NSubstitute
.NET测试--模拟框架NSubstitute .NET测试 NSubstitute在GitHub的开源地址:https://github.com/nsubstitute/nsubstitute/do ...
- gRPC-go源码(2):ClientConn
摘要 在上一篇文章中,我们聊了聊gRPC是怎么管理一条从Client到Server的连接的. 我们聊到了gRPC拥有Resolver,用来解析地址:拥有Balancer,用来做负载均衡. 在这一篇文章 ...
- const成员函数可以将非const指针作为返回值吗?
先给出一段代码 class A { int *x; public: int *f() const { return x; } }; 成员函数f返回指向私有成员 x 的非常量指针,我认为这会修改成员x ...