This package provides routines for the conversion of image formats to time series and vice versa. It works best with the readers and writers supported by pynetcf. The main use case is for data that is sampled irregularly in space or time. If you have data that is sampled in regular intervals then there are alternatives to this package which might be better for your use case. See Alternatives for more detail.
The readers and writers have to conform to the API specifications of the base classes defined in pygeobase to work without adpation.
This package requires python>=3.9 and depends on the following libraries that should be installed with conda or mamba
conda install -c conda-forge numpy netCDF4 pyresample
Afterwards you can install this package and all remaining dependencies via:
pip install repurpose
On macOS if you get ImportError: Pykdtree failed to import its C extension, then it might be necessary to install the pykdtree package from conda-forge
conda install -c conda-forge pykdtree
Some packages are only needed to run unit tests and build docs of this package.
They can be installed via pip install repurpose[testing]
and/or
pip install repurpose[docs]
.
If you use the software in a publication then please cite it using the Zenodo DOI. Be aware that this badge links to the latest package version.
It includes the main modules:
img2ts
for image/swath to time series conversion, including support for spatial resampling.ts2img
for time series to image conversion, including support for temporal resampling.resample
for spatial resampling of (regular or irregular) gridded data to different resolutions.process
contains a framework for parallel processing, error handling and logging based on joblib
If you have data that can be represented as a 3D datacube then these projects might be better suited to your needs.
- Climate Data Operators (CDO) can work with several input formats, stack them and change the chunking to allow time series optimized access. It assumes regular sampling in space and time as far as we know.
- netCDF Operators (NCO) are similar to CDO with a stronger focus on netCDF.
- xarray can read, restructure, write netcdf data as datacubes and apply functions across dimensions.
We are happy if you want to contribute. Please raise an issue explaining what is missing or if you find a bug. We will also gladly accept pull requests against our master branch for new features or bug fixes.
If you want to contribute please follow these steps:
- Fork the repurpose repository to your account
- make a new feature branch from the repurpose master branch
- Add your feature
- Please include tests for your contributions in one of the test directories. We use py.test so a simple function called test_my_feature is enough
- submit a pull request to our master branch