pandas.DataFrame.to_parquet#
- DataFrame.to_parquet(path=None, engine='auto', compression='snappy', index=None, partition_cols=None, storage_options=None, **kwargs)[源代码]#
将DataFrame写入二进制拼图格式。
此函数将数据帧作为 parquet file 。您可以选择不同的镶木地板后端,并有压缩选项。看见 the user guide 了解更多详细信息。
- 参数
- path字符串、路径对象、类似文件的对象或无,默认为无
字符串、路径对象(实现
os.PathLike[str]
)或实现二进制文件的类似文件的对象write()
功能。如果没有,则以字节形式返回结果。如果是字符串或路径,则在写入分区数据集时将其用作根目录路径。在 1.2.0 版更改.
以前这是“fname”
- engine{‘AUTO’,‘YARROW’,‘FastPARQUET’},默认为‘AUTO’
要使用的镶木地板库。如果为‘AUTO’,则选项
io.parquet.engine
使用的是。默认设置io.parquet.engine
行为是尝试‘yarrow’,如果‘yarrow’不可用,则退回到‘快速拼花’。- compression{‘Snappy’,‘gzip’,‘brotli’,None},默认‘Snappy’
要使用的压缩的名称。使用
None
不需要压缩。- index布尔默认为无
如果
True
,在文件输出中包括数据帧的索引。如果False
,则不会将它们写入文件。如果None
,类似于True
将保存数据帧的索引。然而,RangeIndex不是保存为值,而是作为范围存储在元数据中,因此它不需要太多空间并且速度更快。其他索引将作为列包括在文件输出中。- partition_cols列表,可选,默认为无
用于对数据集进行分区的列名。列按给定的顺序进行分区。如果Path不是字符串,则必须为None。
- storage_optionsDICT,可选
对特定存储连接有意义的额外选项,例如主机、端口、用户名、密码等。对于HTTP(S)URL,键-值对被转发到
urllib.request.Request
作为标题选项。对于其他URL(例如,以“s3://”和“gcs://”开头),键-值对被转发到fsspec.open
。请看fsspec
和urllib
有关更多详细信息和有关存储选项的更多示例,请参阅 here 。1.2.0 新版功能.
- **kwargs
传递给拼花板库的其他参数。看见 pandas io 了解更多详细信息。
- 退货
- 如果未提供路径参数,则为字节,否则为无
参见
read_parquet
读一份镶木地板文件。
DataFrame.to_csv
编写CSV文件。
DataFrame.to_sql
写入SQL表。
DataFrame.to_hdf
写入HDF。
注意事项
此函数需要 fastparquet 或 pyarrow 类库。
示例
>>> 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()