Skip to main content

A CF-compliant earth science data analysis library

Project description

CF Python

The Python cf package is an Earth science data analysis library that is built on a complete implementation of the CF data model.

Documentation

http://ncas-cms.github.io/cf-python

Dask

From version 3.14.0, the cf package uses Dask for all of its data manipulations.

Recipes

https://ncas-cms.github.io/cf-python/recipes

Tutorial

https://ncas-cms.github.io/cf-python/tutorial

Installation

http://ncas-cms.github.io/cf-python/installation

Command line utilities

During installation the cfa command line utility is also installed, which

  • generates text descriptions of field constructs contained in files, and

  • creates new datasets aggregated from existing files.

Visualization

Powerful, flexible, and very simple to produce visualizations of field constructs are available with the cf-plot package, that needs to be installed separately to the cf package.

Training

https://github.com/NCAS-CMS/cf-tools-training

Functionality

The cf package implements the CF data model for its internal data structures and so is able to process any CF-compliant dataset. It is not strict about CF-compliance, however, so that partially conformant datasets may be ingested from existing datasets and written to new datasets. This is so that datasets which are partially conformant may nonetheless be modified in memory.

The cf package can:

  • read field constructs and domain constructs from netCDF, CDL, Zarr, Kerchunk, PP and UM datasets with a choice of netCDF backends,

  • read files from OPeNDAP servers and S3 object stores,

  • be fully flexible with respect to dataset storage chunking,

  • create new field constructs in memory,

  • write and append field and domain constructs to netCDF and Zarr v3 datasets on disk, with control over HDF5 internal file metadata,

  • read, create, and manipulate UGRID mesh topologies,

  • read, write, and manipulate HEALPix grids,

  • read, write, and create coordinates defined by geometry cells,

  • read netCDF and CDL datasets containing hierarchical groups,

  • inspect field constructs,

  • test whether two field constructs are the same,

  • modify field construct metadata and data,

  • create subspaces of field constructs,

  • incorporate, and create, metadata stored in external files,

  • read, write, and create data that have been compressed by convention (i.e. ragged or gathered arrays, or coordinate arrays compressed by subsampling), whilst presenting a view of the data in its uncompressed form,

  • combine field constructs arithmetically,

  • manipulate field construct data by arithmetical and trigonometrical operations,

  • perform weighted statistical collapses on field constructs, including those with geometry cells, UGRID mesh topologies, and HEALPix grids,

  • perform histogram, percentile and binning operations on field constructs,

  • regrid structured grid, UGRID, HEALPix, and DSG field constructs with (multi-)linear, nearest neighbour, first- and second-order conservative and higher order patch recovery methods, including 3-d regridding, and large-grid support,

  • apply convolution filters to field constructs,

  • create running means from field constructs,

  • apply differential operators to field constructs,

  • create derived quantities (such as relative vorticity),

  • read and write data that are quantized to eliminate false precision.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

cf_python-3.20.1.tar.gz (5.4 MB view details)

Uploaded Source

File details

Details for the file cf_python-3.20.1.tar.gz.

File metadata

  • Download URL: cf_python-3.20.1.tar.gz
  • Upload date:
  • Size: 5.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.0

File hashes

Hashes for cf_python-3.20.1.tar.gz
Algorithm Hash digest
SHA256 0c7ea20e86fd65a2f470d34da703e72af021c411a746f3fd838a1713e8b49fae
MD5 08fb321607cbedb96cbc399680e7df46
BLAKE2b-256 12bff68acd0c36503445e28b6b9bff91c7b2f5c7a008cd9fa217f003c5784376

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