pandas pd.read_excel ()
pd.read_excel ()人们经常用pandas处理表格型数据,时常需要读入excel表格数据,很多人一般都是直接这么用:pd.read_excel (“文件路径文件名”), 再多一点的设置可能是转义一下路径中的斜杠,一旦原始的excel表不是很规整,这样简单读入势必报错!.其实这个函数有很多参数可以设置,为了应对各式excel表满足各种读入的需求,我们来详细了解下pd.excel ()中的
pd.read_excel ()
人们经常用pandas处理表格型数据,时常需要读入excel表格数据,很多人一般都是直接这么用:
pd.read_excel (“文件路径文件名”), 再多一点的设置可能是转义一下路径中的斜杠,一旦原始的excel表不是很规整,这样简单读入势必报错!.
其实这个函数有很多参数可以设置,为了应对各式excel表满足各种读入的需求,我们来详细了解下pd.excel ()中的主要参数。
首先,认识一下pd.read_excel(),函数的官方文档是这么说的:
将Excel文件读取到pandas DataFrame中,支持本地文件系统或URL的’xls’和’xlsx’文件扩展名,带有这两种扩展名的文件,函数都可以处理;.
pandas.read_excel(io,
sheet_name=0,
header=0,
names=None,
index_col=None,
parse_cols=None,
usecols=None,
squeeze=False,
dtype=None,
engine=None,
converters=None,
true_values=None,
false_values=None,
skiprows=None,
nrows=None,
na_values=None,
keep_default_na=True,
verbose=False,
parse_dates=False,
date_parser=None,
thousands=None,
comment=None,
skip_footer=0,
skipfooter=0,
convert_float=True,
mangle_dupe_cols=True,
**kwds)
函数的使用:
直接使用pd.read_excel(r"文件路径"),默认读取第一个sheet的全部数据
(! + r = SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escap)
实际上就是第一个参数:io,支持str, bytes, ExcelFile, xlrd.Book, path object, or file-like object
io = 路径
sheet_name:
默认是sheetname为0,返回多表使用sheetname=[0,1],若sheetname=None是返回全表 。注意:int/string返回的是dataframe,而none和list返回的是dict of dataframe。
header :
指定作为列名的行,默认0,即取第一行,数据为列名行以下的数据;若数据不含列名,则设定 header = None;
skiprows(list like):省略指定行数的数据
skip_footer:省略从尾部数的行数据
index_col(int, list of int, default None):
默认值(index_col = None)——重新设置一列成为index值
names:指定列的名字,传入一个list数据
pd.read_excel(names=['a','b','c'])
Out[ ]:
a b c
1
3 1 5 学生
3 2 4 老师
parse_cols:
为True时,则尝试解析数据框中的行索引;为列表,则尝试解析对应的日期列;参数为嵌套列表,则将某些列合并为日期列;如果参数为字典,则解析对应的列(即字典中的值),并生成新的变量名(即字典中的键)
converters: 通过字典的形式,指定哪些列需要转换成什么形式
throusands: 指定原数据集中的千分位符
parse_dates: 该参数在函数内不再生效
convert_float: 默认将所有的数值型变量转换位浮点型变量
na_values(scalar, str, list-like, or dict, default None) 指定某些列的某些值为NaN
keep_default_na (bool, default True)
表示导入数据时是否导入空值。默认为True,即自动识别空值并导入
usecols (int, str, list-like, or callable default None)
默认为None,解析所有列。
如果为str,则表示Excel列字母和列范围的逗号分隔列表(例如“ A:E”或“ A,C,E:F”)。范围全闭。
如果为int,则表示解析到第几列。
如果为int列表,则表示解析那几列。
str:usecols="A:C",只读取从A列到C列的数据
converters(dict, default None)
对指定列的数据进行指定函数的处理,传入参数为列名与函数组成的字典。key 可以是列名或者列的序号,values是函数,可以def函数或者直接lambda都行。
dtype(Type name or dict of column -> type, default None)
列的类型名称或字典,默认为None,也就是不改变数据类型。
其作用是指定列的数据类型。
true_values(list,default None) 将指定的文本转换为True,默认为None
false_values(list,default None) 将指定的文本转换为False,默认为None
engine(str, default None)
可以接受的参数有“ xlrd”,“ openpyxl”或“ odf”,用于使用第三方的库去解析excel文件。
squeeze (bool, default False)
默认为False。如果设置squeeze=True则表示如果解析的数据只包含一列,则返回一个Series。
nrows(int, default None)
默认为None, 指定需要读取前多少行,通常用于较大的数据文件中。
更多推荐
所有评论(0)