pandas.read_pickle — pandas 3.0.0.dev0+2103.g41968a550a documentation (original) (raw)
pandas.read_pickle(filepath_or_buffer, compression='infer', storage_options=None)[source]#
Load pickled pandas object (or any object) from file and return unpickled object.
Warning
Loading pickled data received from untrusted sources can be unsafe. See here.
Parameters:
filepath_or_bufferstr, path object, or file-like object
String, path object (implementing os.PathLike[str]
), or file-like object implementing a binary readlines()
function. Also accepts URL. URL is not limited to S3 and GCS.
compressionstr or dict, default ‘infer’
For on-the-fly decompression of on-disk data. If ‘infer’ and ‘filepath_or_buffer’ is path-like, then detect compression from the following extensions: ‘.gz’, ‘.bz2’, ‘.zip’, ‘.xz’, ‘.zst’, ‘.tar’, ‘.tar.gz’, ‘.tar.xz’ or ‘.tar.bz2’ (otherwise no compression). If using ‘zip’ or ‘tar’, the ZIP file must contain only one data file to be read in. Set to None
for no decompression. Can also be a dict with key 'method'
set to one of {'zip'
, 'gzip'
, 'bz2'
, 'zstd'
, 'xz'
, 'tar'
} and other key-value pairs are forwarded tozipfile.ZipFile
, gzip.GzipFile
,bz2.BZ2File
, zstandard.ZstdDecompressor
, lzma.LZMAFile
ortarfile.TarFile
, respectively. As an example, the following could be passed for Zstandard decompression using a custom compression dictionary:compression={'method': 'zstd', 'dict_data': my_compression_dict}
.
Added in version 1.5.0: Added support for .tar files.
Changed in version 1.4.0: Zstandard support.
storage_optionsdict, optional
Extra options that make sense for a particular storage connection, e.g. host, port, username, password, etc. For HTTP(S) URLs the key-value pairs are forwarded to urllib.request.Request
as header options. For other URLs (e.g. starting with “s3://”, and “gcs://”) the key-value pairs are forwarded to fsspec.open
. Please see fsspec
and urllib
for more details, and for more examples on storage options refer here.
Returns:
object
The unpickled pandas object (or any object) that was stored in file.
Notes
read_pickle is only guaranteed to be backwards compatible to pandas 1.0 provided the object was serialized with to_pickle.
Examples
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 pd.to_pickle(original_df, "./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