pandas.DataFrame.to_pickle#

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

将对象(序列化)保存到文件中。

参数:
路径字符串, 路径对象, 或类文件对象

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

压缩str 或 dict,默认 ‘infer’

用于实时压缩输出数据。如果 ‘infer’ 并且 ‘path’ 是类路径,则从以下扩展名检测压缩:’.gz’, ‘.bz2’, ‘.zip’, ‘.xz’, ‘.zst’, ‘.tar’, ‘.tar.gz’, ‘.tar.xz’ 或 ‘.tar.bz2’(否则不压缩)。设置为 None 表示不压缩。也可以是一个字典,键 'method' 设置为 {'zip', 'gzip', 'bz2', 'zstd', 'xz', 'tar'} 之一,其他键值对将转发给 zipfile.ZipFile, gzip.GzipFile, bz2.BZ2File, zstandard.ZstdCompressor, lzma.LZMAFiletarfile.TarFile,分别。例如,以下内容可以传递以实现更快的压缩并创建可复现的 gzip 存档:compression={'method': 'gzip', 'compresslevel': 1, 'mtime': 1}

Added in version 1.5.0: 增加了对 .tar 文件的支持。

协议int

int 表示序列化器应使用的协议,默认 HIGHEST_PROTOCOL(见 [1] 第 12.1.2 段)。可能的值为 0, 1, 2, 3, 4, 5。协议参数的负值等同于将其值设置为 HIGHEST_PROTOCOL。

storage_optionsdict, 可选

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

参见

read_pickle

从文件加载pickled的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