An implementation of chunked, compressed, N-dimensional arrays for Python
High-level functions for saving and loading zarr data structures to and from storage. These provide convenient interfaces for persistence operations with support for various data formats and storage backends.
def load(
store: StoreLike,
path: str = None,
**kwargs
) -> AnyLoad zarr array data into memory as a numpy array or nested structure.
Parameters:
store: Storage location containing zarr datapath: Path within store to load fromReturns: Numpy array for single arrays, dict-like structure for groups
def save_array(
store: StoreLike,
arr: ArrayLike,
path: str = None,
**kwargs
) -> NoneSave a single array to zarr format.
Parameters:
store: Storage location to save toarr: Array data to savepath: Path within store to save todef save_group(
store: StoreLike,
*args,
path: str = None,
**kwargs
) -> NoneSave a group structure with multiple arrays.
def save(
file: Union[str, StoreLike],
*args,
**kwargs
) -> NoneGeneral-purpose save function that handles both arrays and groups.
Parameters:
file: File path or storage location*args: Arrays or array-like data to save**kwargs: Additional arrays as keyword argumentsimport zarr
import numpy as np
# Create and save array
data = np.random.random((1000, 1000))
zarr.save('dataset.zarr', data)
# Load array back
loaded_data = zarr.load('dataset.zarr')# Save multiple arrays
arr1 = np.random.random((500, 500))
arr2 = np.random.random((300, 300))
zarr.save('multi_arrays.zarr',
temperature=arr1,
humidity=arr2)
# Load returns dict-like structure
data = zarr.load('multi_arrays.zarr')
temp = data['temperature']
humidity = data['humidity']from zarr.codecs import BloscCodec
# Save with compression
zarr.save('compressed.zarr',
data,
compressor=BloscCodec(cname='zstd', clevel=3))
# Load automatically handles decompression
loaded = zarr.load('compressed.zarr')Install with Tessl CLI
npx tessl i tessl/pypi-zarr