polars.DataFrame.write_ipc#
- DataFrame.write_ipc(
- file: str | Path | IO[bytes] | None,
- *,
- compression: IpcCompression = 'uncompressed',
- compat_level: CompatLevel | None = None,
- storage_options: dict[str, Any] | None = None,
- credential_provider: CredentialProviderFunction | Literal['auto'] | None = 'auto',
- retries: int = 2,
Write to Arrow IPC binary stream or Feather file.
See “File or Random Access format” in https://arrow.apache.org/docs/python/ipc.html.
- Parameters:
- file
Path or writable file-like object to which the IPC data will be written. If set to
None
, the output is returned as a BytesIO object.- compression{‘uncompressed’, ‘lz4’, ‘zstd’}
Compression method. Defaults to “uncompressed”.
- compat_level
Use a specific compatibility level when exporting Polars’ internal data structures.
- storage_options
Options that indicate how to connect to a cloud provider.
The cloud providers currently supported are AWS, GCP, and Azure. See supported keys here:
Hugging Face (
hf://
): Accepts an API key under thetoken
parameter:{'token': '...'}
, or by setting theHF_TOKEN
environment variable.
If
storage_options
is not provided, Polars will try to infer the information from environment variables.- credential_provider
Provide a function that can be called to provide cloud storage credentials. The function is expected to return a dictionary of credential keys along with an optional credential expiry time.
Warning
This functionality is considered unstable. It may be changed at any point without it being considered a breaking change.
- retries
Number of retries if accessing a cloud instance fails.
Examples
>>> import pathlib >>> >>> df = pl.DataFrame( ... { ... "foo": [1, 2, 3, 4, 5], ... "bar": [6, 7, 8, 9, 10], ... "ham": ["a", "b", "c", "d", "e"], ... } ... ) >>> path: pathlib.Path = dirpath / "new_file.arrow" >>> df.write_ipc(path)