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.0.tar.gz (5.4 MB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: cf_python-3.20.0.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.0.tar.gz
Algorithm Hash digest
SHA256 d075b85c83e811d2509edc697140c34fb19b7cebf6a0b44cf9398d8e6c0c3903
MD5 d007ae2caf07e36091bda3d6e3c2ed51
BLAKE2b-256 98667082d1d49fc78e288125d3588934cc5ecd5973a4e0881a3344e73eff06bb

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