Skip to content
Snippets Groups Projects
using_api.rst 1.49 KiB

Using the Python API

Writing compressed files

Using enstools's read and write compressing a file could be done by:

from enstools.io import read,write

with read("input.nc") as dataset:
    write(dataset,"output.nc", compression=lossless)

We added a method that does just thad adding few more features: :meth:`enstools.compression.api.compress`

Finding compression parameters

:meth:`enstools.compression.api.analyze_files` :meth:`enstools.compression.api.analyze_dataset`

To analyze a dataset: .. code:

from enstools.io import read
from enstools.compression.api import analyze_dataset

with read("input.nc") as dataset:
    results = analyze_dataset(dataset)

To analyze a file:

from enstools.compression.api import analyze_files

results = analyze_files("input.nc")

Emulator

from enstools.io import read
from enstools.encoding.api import emulate_compression_on_dataset


results = analyze_files("input.nc")
with read("input.nc") as dataset:
    compressed_dataset = emulate_compression_on_dataset(dataset, compression="lossy,sz,pw_rel,1e-5", inplace=False)

    diff = compressed_dataset - dataset

xarray accessor

from enstools.io import read
import enstools.compression.xr_accessor

with read("input.nc") as dataset:
    results = dataset.compression.analyze()