一、函数原型

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()的更多相关文章

  1. pandas read excel文件碰到的一个小问题

    今天利用pandas读取excel时,爆出如下错误: 代码为: import pandas as pd db_eua=pd.read_excel('db_eua.xlsx',sheetname='EU ...

  2. 【繁琐工作自动化】pandas 处理 excel 文件

    0. 一般处理 读取 excel 格式文件:df = pd.read_excel('xx.xlsx'),下面是一些简单查看文件内容的函数: df.head():展示前五行: df.columns:展示 ...

  3. Python使用xlrd、pandas包从Excel读取数据

    #coding=utf-8 # pip install xlrd import xlrd def read_from_xls(filepath,index_col_list): #filepath:读 ...

  4. pandas处理excel文件和csv文件

    一.csv文件 csv以纯文本形式存储表格数据 pd.read_csv('文件名'),可添加参数engine='python',encoding='gbk' 一般来说,windows系统的默认编码为g ...

  5. (数据科学学习手札63)利用pandas读写HDF5文件

    一.简介 HDF5(Hierarchical Data Formal)是用于存储大规模数值数据的较为理想的存储格式,文件后缀名为h5,存储读取速度非常快,且可在文件内部按照明确的层次存储数据,同一个H ...

  6. 其它课程中的python---5、Pandas处理数据和读取数据

    其它课程中的python---5.Pandas处理数据和读取数据 一.总结 一句话总结: 记常用和特例:慢慢慢慢的就熟了,不用太着急,慢慢来 库的使用都很简单:就是库的常用函数就这几个,后面用的时候学 ...

  7. [Python]-pandas模块-CSV文件读写

    Pandas 即Python Data Analysis Library,是为了解决数据分析而创建的第三方工具,它不仅提供了丰富的数据模型,而且支持多种文件格式处理,包括CSV.HDF5.HTML 等 ...

  8. [Pandas]利用Pandas处理excel数据

    Python 处理excel的第三包有很多,比如XlsxWriter.xlrd&xlwt.OpenPyXL.Microsoft Excel API等,最后综合考虑选用了Pandas. Pand ...

  9. Pandas之:Pandas高级教程以铁达尼号真实数据为例

    Pandas之:Pandas高级教程以铁达尼号真实数据为例 目录 简介 读写文件 DF的选择 选择列数据 选择行数据 同时选择行和列 使用plots作图 使用现有的列创建新的列 进行统计 DF重组 简 ...

随机推荐

  1. 使用hive增量更新

    目录 1.增量更新 2.对第一种情况 2.1.准备工作 2.2.更新数据 3.对第二种情况 3.1.准备工作 3.2.方法1 3.3.方法2 参考文末文章,加上自己的理解. 1.增量更新 有一个 ba ...

  2. Django Admin 后台Admin继承UserAdmin增加用户密码不显示明文和用户登录不了的解决方法

    Django后台Admin继承UserAdmin增加用户不显示明文方法 1.在 models.py 中用户表 # 导包规范-1.Python标准模块 from django.db import mod ...

  3. 重量级锁synchronized的优化----自旋锁、自适应自旋锁、锁消除、锁粗化

    synchronized是重量级锁,效率不高.但在jdk 1.6中对synchronize的实现进行了各种优化,使得它显得不是那么重了.jdk1.6对锁的实现引入了大量的优化,如自旋锁.自适应自旋锁. ...

  4. 前端传数据到后台,后台用实体类接收不到引发的思考----Java bean中字段命名潜规则

    1.按照Java语法规范,通常在实体类中的属性,首字母都是小写的.这是由于JavaBean的规范导致的.一般JavaBean属性都是首字母小写,以驼峰命名格式命名,相应的 getter/setter ...

  5. HTTP 请求URL中不能含有空格

    如果含有空格 会报 不合法参数异常 正确做法是将其encode URLEncoder.encode(targetString, "utf-8").replaceAll(" ...

  6. 基于jQuery1.4.2轻量级的弹出窗口jQuery插件wBox 1.0

    Box特点 背景透明度可以根据实际情况进行调节 可以根据需要添加wBox标题 支持callback函数 支持html内容自定义 支持在wBox显示#ID的内容 支持Ajax页面内容 支持iFrame ...

  7. HDOJ-6645(简单题+贪心+树)

    Stay Real HDOJ-6645 由小根堆的性质可以知道,当前最大的值就在叶节点上面,所以只需要排序后依次取就可以了. #include<iostream> #include< ...

  8. P1092 虫食算 题解(搜索)

    题目链接 P1092 虫食算 解题思路 好题啊!这个搜索好难写...... 大概是要考虑进位和考虑使用过某个数字这两个东西,但就很容易出错...... 首先这个从后往前搜比较好想,按照从后往前出现的顺 ...

  9. 从零开始编写一个BitTorrent下载器

    从零开始编写一个BitTorrent下载器 BT协议 简介 BT协议Bit Torrent(BT)是一种通信协议,又是一种应用程序,广泛用于对等网络通信(P2P).曾经风靡一时,由于它引起了巨大的流量 ...

  10. Python-tkinter-window

    示例代码讲解 1.加载tkinter模块 2.创建一个窗口 3.设置窗口的主题 4.开始窗口的事件循环 import tkinter 2 win = tkinter.Tk() 3 win.title( ...