当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pyspark DataFrame.to_excel用法及代码示例


本文简要介绍 pyspark.pandas.DataFrame.to_excel 的用法。

用法:

DataFrame.to_excel(excel_writer: Union[str, pandas.io.excel._base.ExcelWriter], sheet_name: str = 'Sheet1', na_rep: str = '', float_format: Optional[str] = None, columns: Union[str, List[str], None] = None, header: bool = True, index: bool = True, index_label: Union[str, List[str], None] = None, startrow: int = 0, startcol: int = 0, engine: Optional[str] = None, merge_cells: bool = True, encoding: Optional[str] = None, inf_rep: str = 'inf', verbose: bool = True, freeze_panes: Optional[Tuple[int, int]] = None) → None

将对象写入 Excel 工作表。

注意

仅当生成的 DataFrame 预计很小时才应使用此方法,因为所有数据都加载到驱动程序的内存中。

要将单个对象写入 Excel .xlsx 文件,只需指定目标文件名。要写入多个工作表,需要使用目标文件名创建ExcelWriter 对象,并在文件中指定要写入的工作表。

通过指定唯一的 sheet_name 可以写入多个工作表。将所有数据写入文件后,有必要保存更改。请注意,使用已存在的文件名创建ExcelWriter 对象将导致现有文件的内容被擦除。

参数

excel_writerstr 或 ExcelWriter 对象

文件路径或现有 ExcelWriter。

sheet_namestr,默认为“Sheet1”

将包含 DataFrame 的工作表的名称。

na_repstr,默认“”

缺少数据表示。

float_formatstr,可选

浮点数的格式字符串。例如 float_format="%%.2f" 会将 0.1234 格式化为 0.12。

columnsstr 的序列或列表,可选

要写的列。

headerbool 或 str 列表,默认 True

写出列名。如果给出字符串列表,则假定它是列名的别名。

index布尔值,默认为真

写行名(索引)。

index_labelstr 或序列,可选

如果需要,索引列的列标签。如果未指定,并且 headerindex 为 True,则使用索引名称。如果 DataFrame 使用 MultiIndex,则应给出序列。

startrow整数,默认 0

左上角单元格行转储数据帧。

startcol整数,默认 0

左上角单元格列转储 DataFrame 。

enginestr,可选

编写要使用的引擎,‘openpyxl’ 或 ‘xlsxwriter’。您也可以通过选项 io.excel.xlsx.writerio.excel.xls.writerio.excel.xlsm.writer 进行设置。

merge_cells布尔值,默认为真

将 MultiIndex 和分层行写入合并单元格。

encodingstr,可选

生成的 excel 文件的编码。只有 xlwt 需要,其他编写器原生支持 unicode。

inf_repstr,默认 ‘inf’

无穷大的表示(Excel 中没有无穷大的本机表示)。

verbose布尔值,默认为真

在错误日志中显示更多信息。

freeze_panesint 的元组(长度 2),可选

指定要冻结的从 1 开始的最底行和最右列。

注意

保存工作簿后,如果不重写整个工作簿,就无法写入更多数据。

例子

创建、写入和保存工作簿:

>>> df1 = ps.DataFrame([['a', 'b'], ['c', 'd']],
...                    index=['row 1', 'row 2'],
...                    columns=['col 1', 'col 2'])
>>> df1.to_excel("output.xlsx")

要指定工作表名称:

>>> df1.to_excel("output.xlsx")  
>>> df1.to_excel("output.xlsx",
...              sheet_name='Sheet_name_1')

如果您希望写入工作簿中的多个工作表,则必须指定 ExcelWriter 对象:

>>> with pd.ExcelWriter('output.xlsx') as writer:  
...      df1.to_excel(writer, sheet_name='Sheet_name_1')
...      df2.to_excel(writer, sheet_name='Sheet_name_2')

要设置用于编写 Excel 文件的库,您可以传递 engine 关键字(根据文件扩展名自动选择默认引擎):

>>> df1.to_excel('output1.xlsx', engine='xlsxwriter')

相关用法


注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.pandas.DataFrame.to_excel。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。