DataFrame.to_parquet(**kwargs)[source]
将DataFrame写入二进制拼花格式。
该函数将数据帧作为 parquet file写入。您可以选择不同的parquet后端,并可以选择压缩。有关更多详细信息,请参见 用户指南。
参数:path :str或 file-like object
如果是字符串,则在编写分区数据集时将其用作根目录路径。
通过类文件对象,我们使用write()方法来引用对象,
比如文件处理程序(例如通过内置的open函数)或io.BytesIO。
引擎fastparquet不接受类文件的对象。
在版本1.0.0中更改。
之前这是"fname"
engine :{‘auto’, ‘pyarrow’, ‘fastparquet’},
默认为‘auto’
Parquet库使用。
如果为‘auto’,则使用该选项 io.parquet.engine。
默认io.parquet.engine 行为是尝试使用“pyarrow”,
如果“pyarrow”不可用,则退回到“fastparquet”。
compression :{‘snappy’, ‘gzip’, ‘brotli’, None},
默认为 ‘snappy’
要使用的压缩名称。无压缩使用None。
index:bool, 默认为None
如果为True,则在文件输出中包含dataframe的索引。
如果为False,则不会将它们写入文件。
如果没有,类似于True,将保存dataframe的索引。
然而,RangeIndex不是作为值保存的,
而是作为一个范围存储在元数据中,
因此它不需要太多空间,而且速度更快。
其他索引将作为列包含在文件输出中。
新版本为0.24.0。
partition_cols:list, 可选, 默认为 None
要根据其对数据集进行分区的列名。
列按照给定的顺序进行分区。
如果路径不是字符串,
则必须为None。
新版本为0.24.0。
**kwargs
附加参数传递到parquet库。
有关更多详细信息,
Notes
例子>>> 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()