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或系列。

同时支持xlsxlsx从本地文件系统的文件扩展名或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表作为一个DataFrame

  • 1: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_datetimepd.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。

例子

文件可以使用文件名作为读取字符串或一个打开文件对象:

> > >psread_excel(“tmp.xlsx”,index_col=0)名义价值0 string1 11 string2相等22 #评论3
> > >psread_excel(开放(“tmp.xlsx”,rb的),sheet_name=“Sheet3”)姓名:0名称的值0 0 string1 11 1 string2相等22 2 #评论3

指数和标题可以通过指定index_col参数

> > >psread_excel(“tmp.xlsx”,index_col=没有一个,=没有一个)0 1 20南名称值1 0.0 string1 12 1.0 string2相等23 2.0 #评论3

列类型推断,但可以显式地指定

> > >psread_excel(“tmp.xlsx”,index_col=0,dtype={“名字”:str,“价值”:浮动})名义价值0 string1 1.01 string2相等2.02 #评论3.0

真的,假的,和NA值,和成千上万的分隔符有违约,但也可以显式地指定。提供的值作为字符串或字符串列表!

> > >psread_excel(“tmp.xlsx”,index_col=0,na_values=(“string1”,“string2相等”])名义价值0没有11一22 #评论3

注释行在excel可以跳过输入文件使用评论kwarg

> > >psread_excel(“tmp.xlsx”,index_col=0,评论=“#”)名义价值0 string1 1.01 string2相等2.02没有南