pandas.DataFrame.to_parquet #

数据框。to_parquet (路径=, * ,引擎= 'auto' ,压缩= 'snappy' ,索引=, partition_cols =, storage_options =, ** kwargs ) [来源] #

将 DataFrame 写入二进制 parquet 格式。

该函数将数据帧写入parquet 文件。您可以选择不同的镶木地板后端,并可以选择压缩。有关更多详细信息,请参阅 用户指南。

参数
path str,路径对象,类文件对象,或 None,默认 None

字符串、路径对象(实现os.PathLike[str])或实现二进制write()函数的类文件对象。如果没有,则结果以字节形式返回。如果是字符串或路径,则在写入分区数据集时将用作根目录路径。

引擎{'auto', 'pyarrow', 'fastparquet'}, 默认 'auto'

要使用的 Parquet 库。如果为“自动”,则 io.parquet.engine使用该选项。默认io.parquet.engine 行为是尝试“pyarrow”,如果“pyarrow”不可用,则返回“fastparquet”。

压缩str 或 None,默认 'snappy'

要使用的压缩的名称。用于None无压缩。支持的选项:'snappy'、'gzip'、'brotli'、'lz4'、'zstd'。

索引bool,默认 None

如果True,则在文件输出中包含数据帧的索引。如果False,它们将不会被写入文件。如果None,类似于True数据帧的索引将被保存。但是,RangeIndex 将作为元数据中的范围存储,而不是保存为值,因此不需要太多空间并且速度更快。其他索引将作为列包含在文件输出中。

partition_cols列表,可选,默认 None

用于对数据集进行分区的列名称。列按照给定的顺序进行分区。如果路径不是字符串,则必须为 None。

storage_options字典,可选

对于特定存储连接有意义的额外选项,例如主机、端口、用户名、密码等。对于 HTTP(S) URL,键值对将urllib.request.Request作为标头选项转发。对于其他 URL(例如以“s3://”和“gcs://”开头),键值对将转发到fsspec.open。请参阅fsspecurllib了解更多详细信息,有关存储选项的更多示例,请参阅此处

**夸格

传递给 parquet 库的其他参数。有关更多详细信息,请参阅 pandas io 。

返回
如果没有提供路径参数,则为字节,否则无

也可以看看

read_parquet

读取镶木地板文件。

DataFrame.to_orc

编写一个orc文件。

DataFrame.to_csv

写入 csv 文件。

DataFrame.to_sql

写入sql表。

DataFrame.to_hdf

写入hdf。

笔记

此功能需要fastparquetpyarrow库。

例子

>>> df = pd.DataFrame(data={'col1': [1, 2], 'col2': [3, 4]})
>>> df.to_parquet('df.parquet.gzip',
...               compression='gzip')  
>>> pd.read_parquet('df.parquet.gzip')  
   col1  col2
0     1     3
1     2     4

如果您想获得镶木地板内容的缓冲区,您可以使用 io.BytesIO 对象,只要您不使用创建多个文件的partition_cols。

>>> import io
>>> f = io.BytesIO()
>>> df.to_parquet(f)
>>> f.seek(0)
0
>>> content = f.read()