Homogenize NetCDF files to CF standard: pyhomogenize

Versions

Python Package Index Build

Documentation and Support

Documentation Status Supported Python Versions

Open Source

License DOI

Coding Standards

Python Black pre-commit.ci status

Development Status

Project Status: Active – The project has reached a stable, usable state and is being actively developed. Build Status Coveralls

Tool to homogenize netCDF to CF standard files using xarray

See https://cfconventions.org

Documentation

The official documentation is at https://pyhomogenize.readthedocs.io/

Features

  • some useful functions to read and write large netCDF files

  • basics: This class creates a fixed frequency CFTimeIndex from user-given start and end dates. You can manipulate the CFTimeIndex and crop it to user-specific conditions.

  • netcdf_basics: This class opens one or multiple netCDF files by calling the class. You can manipulate the netCDF attributes and write it to a new file.

  • time_control: This class is a time checker for NetCDF files following CF Metadata Conventions. It is based on pyhomogenize’s netcdf_basics class. Thus it opens the netCDF files by calling the class.

  • time_compare: This class compares the time axes of list entires of multiple xr.datasets, netCDF files and/or time_control objects.

Installation

You can install the package directly with pip:

pip install pyhomogenize

If you want to contribute, I recommend cloning the repository and installing the package in development mode, e.g.

git clone https://github.com/ludwiglierhammer/pyhomogenize.git
cd pyhomogenize
pip install -e .

This will install the package but you can still edit it and you don’t need the package in your PYTHONPATH

Requirements

  • python3.6 or higher

  • cftime

  • dask

  • iteration_utilities

  • xarray

Contact

In cases of any problems, needs or wishes do not hesitate to contact:

ludwig.lierhammer@hereon.de

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.