Skip to main content

CF conventions multi-dimensional array storage on top of Booklet

Project description

cfdb

CF conventions multi-dimensional array storage on top of Booklet

build codecov PyPI version


Documentation: https://mullenkamp.github.io/cfdb/

Source Code: https://github.com/mullenkamp/cfdb


cfdb is a pure Python database for managing labeled multi-dimensional arrays following the CF conventions. It is an alternative to netCDF4/xarray, built on Booklet for local file storage and EBooklet for S3 sync. Thread-safe and multiprocessing-safe via locks.

Installation

pip install cfdb

Quick Example

import cfdb
import numpy as np

with cfdb.open_dataset('example.cfdb', flag='n') as ds:
    lat = ds.create.coord.lat(data=np.linspace(-90, 90, 181, dtype='float32'))
    lon = ds.create.coord.lon(data=np.linspace(-180, 180, 361, dtype='float32'))
    temp = ds.create.data_var.generic('temperature', ('latitude', 'longitude'), dtype='float32')
    temp[:] = np.random.rand(181, 361).astype('float32') * 40 - 10

with cfdb.open_dataset('example.cfdb') as ds:
    for slices, data in ds['temperature'].iter_chunks(include_data=True):
        print(slices, data.shape)

See the full documentation for user guides, concepts, and API reference.

License

This project is licensed under the terms of the Apache Software License 2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cfdb-0.5.8.tar.gz (61.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cfdb-0.5.8-py3-none-any.whl (68.2 kB view details)

Uploaded Python 3

File details

Details for the file cfdb-0.5.8.tar.gz.

File metadata

  • Download URL: cfdb-0.5.8.tar.gz
  • Upload date:
  • Size: 61.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.7

File hashes

Hashes for cfdb-0.5.8.tar.gz
Algorithm Hash digest
SHA256 3d295b31b78de85656b57315789b7e1d389cf773eac63a145b809e5b7f52935e
MD5 0bb5d824e5f33806341958f6d08ecf46
BLAKE2b-256 e48284b0a8ac810cd37352017559b29b50173911f11f5fc801c857c107290d48

See more details on using hashes here.

File details

Details for the file cfdb-0.5.8-py3-none-any.whl.

File metadata

  • Download URL: cfdb-0.5.8-py3-none-any.whl
  • Upload date:
  • Size: 68.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.7

File hashes

Hashes for cfdb-0.5.8-py3-none-any.whl
Algorithm Hash digest
SHA256 27543bdc738fcc8d8676e4ef7ee251ef18397ee3273d026a4780b050f3ba796b
MD5 1df80decdc265d586ea84fa167be2106
BLAKE2b-256 521ca6ee8442d5731a016e875df744888941204a081dda73ea4ca44d1d7448b6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page