pyspark.pandas.read_excel¶
-
pyspark.pandas。
read_excel
( io:联盟(str,任何],sheet_name:联盟(str、int、列表(联盟[str, int]],没有)=0,头:联盟(int,列表(int]]=0,的名字:可选(列表]=没有一个,index_col:可选(列表(int]]=没有一个,usecols:联盟[int, str,列出[联盟(str, int)],可调用的((str), bool),没有一个)=没有一个,挤压:bool=假,dtype:可选(Dict(str,联盟(str,numpy.dtype,pandas.core.dtypes.base.ExtensionDtype]]]=没有一个,引擎:可选(str]=没有一个,转换器:可选(Dict]=没有一个,true_values:可选(任何]=没有一个,false_values:可选(任何]=没有一个,skiprows:联盟(int, int[]列表,没有)=没有一个,nrows:可选(int]=没有一个,na_values:可选(任何]=没有一个,keep_default_na:bool=真正的,详细的:bool=假,parse_dates:联盟(bool,列表,Dict]=假,date_parser:可选(可调用的]=没有一个,成千上万的人:可选(str]=没有一个,评论:可选(str]=没有一个,skipfooter:int=0,convert_float:bool=真正的,mangle_dupe_cols:bool=真正的,* *kwds:任何 )→联盟(pyspark.pandas.frame.DataFrame,pyspark.pandas.series.Series,Dict(str,联盟(pyspark.pandas.frame.DataFrame,pyspark.pandas.series.Series] ] ] ¶ -
Excel文件读入pandas-on-Spark DataFrame或系列。
同时支持xls和xlsx从本地文件系统的文件扩展名或URL。支持一个选项来读取单个表或表的列表。
- 参数
-
- io 文件描述符,str pathlib。路径,ExcelFile或xlrd.Book
-
字符串可以是一个URL。URL的值必须在火花DataFrameReader可用。
请注意
如果低于3.0底层的火花,不支持参数为字符串。您可以使用ps.from_pandas (pd.read_excel (…)作为一个解决方案。
- sheet_name str, int,列表,或没有,默认为0
-
字符串用于表的名字。使用整数0板的位置。/整数的字符串列表是用于请求多个表。指定没有得到所有表。
可用的情况下:
默认为
0
:1表作为一个DataFrame1
:2号表DataFrame“Sheet1”
“Sheet1”:负载表名称[0,1,“Sheet5”)
:加载第一,第二和表名为“Sheet5”的东西DataFrame没有:所有表。
- 头 int, int列表,默认为0
-
行(也就是)使用的列标签的DataFrame进行解析。如果一个整数列表传递这些行位置将组合成一个
MultiIndex
。使用没有如果没有头。 - 的名字 数组类,默认没有
-
列表的列名称使用。如果文件不包含标题行,那么你应该明确通过头=没有。
- index_col int, int列表,默认没有
-
列(也就是)作为DataFrame的行标签。通过这些如果没有这样的列。如果通过列表,这些列将组合成一个
MultiIndex
。如果选择数据的一个子集usecols
,index_col基于子集。 - usecols int, str,类似,或可调用的默认
-
返回列的一个子集。
如果没有,那么解析所有列。
如果str,那么显示的逗号分隔列表Excel列字母和列范围(例如“E”或“A, C, E, F”)。范围是双方的包容。
如果列表int,那么显示的列表列数字被解析。
如果字符串列表,显示列名列表解析。
如果调用,那么评估每一列名称反对和解析列如果调用返回
真正的
。
- 挤压 bool,默认的错误
-
如果解析数据只包含一列然后返回一个系列。
- dtype 类型名称或dict列- >类型,默认没有
-
数据类型数据或列。例如{a: np。浮动64, ‘b’: np.int32} Use对象保存数据存储在Excel中,而不是解释dtype。如果转换器指定,他们将被应用,而不是dtype转换。
- 引擎 str,默认没有
-
如果io不是一个缓冲区或路径,这必须设置为确定io。可接受的值是没有或xlrd。
- 转换器 dict类型,默认没有
-
Dict转换特定列中的值的函数。键可以是整数或列标签,值函数,将一个输入参数,Excel单元内容,并返回转换后的内容。
- true_values 列表,默认没有
-
值来考虑是真实的。
- false_values 列表,默认没有
-
值来考虑是错误的。
- skiprows 类似
-
行跳过开头(也就是)。
- nrows int,默认没有
-
解析的行数。
- na_values 标量,str、类似或dict类型,默认没有
-
附加字符串识别为NA /南。如果dict通过,具体每列的NA值。默认情况下以下值解释为南。
- keep_default_na bool,默认的真
-
如果指定na_values keep_default_na是假的默认NaN值覆盖,否则它们附加到。
- 详细的 bool,默认的错误
-
表明NA值的数量放在非数字列。
- parse_dates bool、类似或dict类型,默认的错误
-
的行为如下:
布尔值。如果这是真的- >尝试解析指数。
int或名称的列表。例如如果[1,2,3]- >尝试解析列1,2,3每一列作为一个单独的日期。
列表的列表。例如如果[[1,3]]- >结合列1和3和解析为一个单一的日期列。
dict。{{“foo”:[1,3]}} - >解析列1,3结果日期和电话“foo”
如果一个列或索引包含unparseable日期,整个列将返回或索引的对象数据类型。对于非标准的datetime解析,使用
pd.to_datetime
后pd.read_csv
注意:一个快速路径存在iso8601-formatted日期。
- date_parser 功能,可选
-
函数用于将一个字符串序列列一个datetime实例数组。默认使用
dateutil.parser.parser
做转换。pandas-on-Spark将尝试调用date_parser在三种不同的方式,推进到下一个如果发生异常:1)通过定义的一个或多个数组parse_dates)作为参数;2)连接的一点(行操作)定义的列的字符串值parse_dates成一个数组,通过;和3)调用date_parser一次使用一个或多个字符串(每一行对应的列定义parse_dates)作为参数。 - 成千上万的人 str,默认没有
-
成千上万的分离器解析字符串列数字。注意,这个参数是只有必要的列存储为文本在Excel中,任何数字列将自动解析,无论显示格式。
- 评论 str,默认没有
-
评论线的剩余部分。经过一个字符或字符参数表明输入文件中的注释。注释字符串之间的任何数据和当前行结束时将被忽略。
- skipfooter int,默认0
-
行结束时跳过(也就是)。
- convert_float bool,默认的真
-
积分浮点数转换成int(即。,1。0–> 1). If False, all numeric data will be read in as floats: Excel stores all numbers as floats internally.
- mangle_dupe_cols bool,默认的真
-
重复的列将被指定为“X”,“X。1 ',…的X。N ',而不是' X '…' X '。传入错误将导致数据被覆盖,如果有重复的名字列。
- * * kwds 可选
-
可选关键字参数可以传递
TextFileReader
。
- 返回
-
- DataFrame或DataFrames dict类型
-
DataFrame传入的Excel文件。有关更多信息,请参见在sheet_name参数当dict DataFrames返回。
另请参阅
-
DataFrame.to_excel
-
写DataFrame Excel文件。
-
DataFrame.to_csv
-
写DataFrame逗号分隔值(csv)文件。
-
read_csv
-
逗号分隔值(csv)文件读入DataFrame。
例子
文件可以使用文件名作为读取字符串或一个打开文件对象:
> > >ps。read_excel(“tmp.xlsx”,index_col=0)名义价值0 string1 11 string2相等22 #评论3
> > >ps。read_excel(开放(“tmp.xlsx”,rb的),…sheet_name=“Sheet3”)姓名:0名称的值0 0 string1 11 1 string2相等22 2 #评论3
指数和标题可以通过指定index_col和头参数
> > >ps。read_excel(“tmp.xlsx”,index_col=没有一个,头=没有一个)0 1 20南名称值1 0.0 string1 12 1.0 string2相等23 2.0 #评论3
列类型推断,但可以显式地指定
> > >ps。read_excel(“tmp.xlsx”,index_col=0,…dtype={“名字”:str,“价值”:浮动})名义价值0 string1 1.01 string2相等2.02 #评论3.0
真的,假的,和NA值,和成千上万的分隔符有违约,但也可以显式地指定。提供的值作为字符串或字符串列表!
> > >ps。read_excel(“tmp.xlsx”,index_col=0,…na_values=(“string1”,“string2相等”])名义价值0没有11一22 #评论3
注释行在excel可以跳过输入文件使用评论kwarg
> > >ps。read_excel(“tmp.xlsx”,index_col=0,评论=“#”)名义价值0 string1 1.01 string2相等2.02没有南