pandas.DataFrame.to_pickle#

DataFrame.to_pickle(path, *, compression='infer', protocol=5, storage_options=None)[源代码]#

将对象 pickle(序列化)到文件。

参数:
pathstr, path object, or file-like object

字符串、路径对象(实现 os.PathLike[str])或实现二进制 write() 函数的文件类对象。序列化对象将被存储的文件路径。

compressionstr or dict, default ‘infer’

用于对输出数据进行即时压缩。如果设置为“infer”,并且 ‘path_or_buf’ 是路径类,则根据以下扩展名检测压缩:‘.gz’、‘.bz2’、‘.zip’、‘.xz’、‘.zst’、‘.tar’、‘.tar.gz’、‘.tar.xz’ 或 ‘.tar.bz2’(否则不进行压缩)。设置为 None 表示不进行压缩。也可以是一个字典,其中 key 设置为 'method',值为 {'zip', 'gzip', 'bz2', 'zstd', 'xz', 'tar'} 中的一个,并且其他键值对将被转发到 zipfile.ZipFilegzip.GzipFilebz2.BZ2Filezstandard.ZstdCompressorlzma.LZMAFiletarfile.TarFile。例如,可以传递以下参数以获得更快的压缩并创建可重现的 gzip 存档:compression={'method': 'gzip', 'compresslevel': 1, 'mtime': 1}

protocolint

指定 pickle 模块应该使用的协议的整数,默认为 HIGHEST_PROTOCOL(参见 [1] 段 12.1.2)。可能的值为 0、1、2、3、4、5。协议参数的负值等同于将其值设置为 HIGHEST_PROTOCOL。

storage_optionsdict, optional

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

另请参阅

read_pickle

从文件加载 pickle 化的 pandas 对象(或任何对象)。

DataFrame.to_hdf

将 DataFrame 写入 HDF5 文件。

DataFrame.to_sql

将 DataFrame 写入 SQL 数据库。

DataFrame.to_parquet

将 DataFrame 写入二进制 parquet 格式。

示例

>>> original_df = pd.DataFrame(
...     {{"foo": range(5), "bar": range(5, 10)}}
... )
>>> original_df
   foo  bar
0    0    5
1    1    6
2    2    7
3    3    8
4    4    9
>>> original_df.to_pickle("./dummy.pkl")
>>> unpickled_df = pd.read_pickle("./dummy.pkl")
>>> unpickled_df
   foo  bar
0    0    5
1    1    6
2    2    7
3    3    8
4    4    9