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.LZMAFile
或tarfile.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
。请参阅fsspec
和urllib
获取更多详细信息,关于存储选项的更多示例请参考 这里。
参见
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