Tool to homogenize netCDF files to CF standard
Project description
Homogenize NetCDF files to CF standard: pyhomogenize
Versions |
|
Documentation and Support |
|
Open Source |
|
Coding Standards |
|
Development Status |
Tool to homogenize netCDF to CF standard files using xarray
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:
Credits
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.
History
0.1.0 (2020-11-12)
First release on PyPI.
0.1.1 (2022-06-24)
Fixed bug in setup.py version number
0.1.2 (2022-06-24)
pre-commit.ci bug fixed
0.1.3 (2022-06-24)
Read version number from __init__
0.1.4 (2022-06-24)
Expand HISTORY.rst
0.2.0 (2022-06-30)
Outsource useful functions for reading and writing large netCDF files.
Use those functiosn directly from pyhomogenize.
Calling pyhomogenize classes is not needed.
0.2.1 (2022-07-01)
rename save_to_netcdf to save_xrdataset
write input files to ds attributes
0.2.2 (2022-07-05)
create chunks if not already existing
0.2.3 (2022-07-11)
write CF variables to dataset while calling open_xrdataset
0.2.4 (2022-07-12)
add data via pip install
0.2.5 (2023-01-04)
precise mid of time range
add more dependencies (cftime, netcdf4, h5netcdf)
0.2.6 (2023-01-24)
add decode_times and combine as keyword argumnets to open_xrdataset
set default value of parallel in open_xrdataset to False
0.2.7 (2023-02-03)
save_xrdataset is now working if Dataset does not include time
0.2.8 (2023-02-13)
convert time axis to CFTimeIndex
0.2.9 (2023-02-16)
set proleptic_gregorian to standard calendar
0.3.0 (2023-02-22)
calculate time_bnds and add them to dataset
0.3.1 (2023-03-16)
get CF_variables
0.3.2 (2023-03-22)
read and write data with length of time axis is 1
add time bounds with length of time axis is 1
drop coordinates from non CF variables
0.3.3 (2023-03-23)
testing for python version 3.8, 3.9 and 3.10
0.4.0 (2023-03-23)
published on zenodo
0.5.0 (2023-06-13)
add time bounds if length of time axis is 1
convert np.datetime64 object to CFTimeIndex
0.5.1 (2023-06-14
fixing v0.5.1
0.5.2 (2023-06-30)
convert time axis to cftime.datetime object
open_xrdataset: set decode_cf to parameters
0.5.3 (2023-07-19)
some restructuring in _convert_time
0.5.4 (2023-08-02)
use unlimied_dims only if dimension name in ds.coords when saving dataset as netcdf file
0.6.0 (2023-09-14)
remove Sphinx from requirements_dev.txt
new frequency time2: YY1-07-01 - YY2-06-30
convert time_ranges to CFTimeIndex
make time_control more flexible
new frequency: yearAC (yyyy1-07-01 to yyyy2-06-30)
new_frequency: yearHydro (yyyy1-09-01 to yyyy2-08-31)
0.6.1 (2023-10-04)
add time bounds for daily data
testing python versions 3.9 to 3.11
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
Built Distribution
File details
Details for the file pyhomogenize-0.6.1.tar.gz
.
File metadata
- Download URL: pyhomogenize-0.6.1.tar.gz
- Upload date:
- Size: 34.6 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f5a2afe31949a8e08a8438c24c56582d2f9beb8f9e98fede5eb5f7545e108ff |
|
MD5 | a662d89a537172216c57987447bfa107 |
|
BLAKE2b-256 | da2cb09e796ad204b450905541da10240050278b5d2b22e567e8cf0dab1a97c4 |
File details
Details for the file pyhomogenize-0.6.1-py3-none-any.whl
.
File metadata
- Download URL: pyhomogenize-0.6.1-py3-none-any.whl
- Upload date:
- Size: 34.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd6d4c861439a07d0d4ee642fabf9ba41de87380408a824caf6751954b3f4463 |
|
MD5 | a98ff68738f46aadc442f6767af6b284 |
|
BLAKE2b-256 | fd7666d7797fe139ee323ab392c73a04d26cb3d9582be813be58c8da50f11b6d |