esa_cci_sm

Conversion of ESA CCI SM images into time series

https://github.com/TUW-GEO/esa_cci_sm

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    3 of 8 committers (37.5%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.6%) to scientific vocabulary

Keywords

cci climers esa preprocess python read sm soil-moisture

Keywords from Contributors

projection interactive serializer cycles packaging charts network-simulation archival shellcodes hacking
Last synced: 6 months ago · JSON representation

Repository

Conversion of ESA CCI SM images into time series

Basic Info
Statistics
  • Stars: 17
  • Watchers: 3
  • Forks: 11
  • Open Issues: 2
  • Releases: 6
Topics
cci climers esa preprocess python read sm soil-moisture
Created over 7 years ago · Last pushed over 1 year ago
Metadata Files
Readme Changelog License Authors

README.rst

============
esa_cci_sm
============

|ci| |cov| |pip| |doc|

.. |ci| image:: https://github.com/TUW-GEO/esa_cci_sm/actions/workflows/ci.yml/badge.svg?branch=master
   :target: https://github.com/TUW-GEO/esa_cci_sm/actions

.. |cov| image:: https://coveralls.io/repos/TUW-GEO/esa_cci_sm/badge.png?branch=master
  :target: https://coveralls.io/r/TUW-GEO/esa_cci_sm?branch=master

.. |pip| image:: https://badge.fury.io/py/esa_cci_sm.svg
    :target: http://badge.fury.io/py/esa_cci_sm

.. |doc| image:: https://readthedocs.org/projects/esa_cci_sm/badge/?version=latest
   :target: http://esa-cci-sm.readthedocs.org/


Tools to convert `ESA CCI SM `_ image files into a time series format.

Installation
------------

This python package and all required dependencies can be installed from
`pypi `_
via `pip `_

.. code-block:: shell

    pip install esa_cci_sm

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

.. code-block:: shell

    conda install -c conda-forge pykdtree

Data download
-------------

Download ESA CCI SM data files either from the public
`CEDA data store via https `_
or the CEDA FTP server using, e.g. `FileZilla `_
or `wget `_

**Host (FTP)**: ``anon-ftp.ceda.ac.uk`` no password or user required

**Directory (FTP)**: ``/neodc/esacci/soil_moisture``)

E.g the following command will download v9.1 COMBINED data for the year 2023 from the CEDA FTP via wget

.. code-block:: shell

    wget -np -nH --cut-dirs 7 -r ftp://anon-ftp.ceda.ac.uk/neodc/esacci/soil_moisture/data/daily_files/COMBINED/v09.1/2023/

Time series creation
--------------------

After installing this package via pip, you have access to the command line tool to convert ESA CCI SM image files
to CF conform time series. We use an Orthogonal multidimensional array representation
as implemented in the `pynetCF `_ python library.

Note that we assume that the downloaded images are stored in yearly subfolders
like

.. code-block::

    /tmp/img/
    ├── 1978/
    │   ├── ESACCI-SOILMOISTURE-L3S-SSMV-PASSIVE-19781101000000-fv09.1.nc
    │   ├── ESACCI-SOILMOISTURE-L3S-SSMV-PASSIVE-19781102000000-fv09.1.nc
    │   ├── ...
    ...
    ├── 2023/
    │   ├── ...
    │   ├── ESACCI-SOILMOISTURE-L3S-SSMV-PASSIVE-20231231000000-fv09.1.nc

The following command would then take the daily images from 1991
to 2023 in the path ``/tmp/img`` and convert data for grid cells over land into times series.
Time series are then stored in ``/tmp/ts``.

.. code-block:: shell

    ccism_reshuffle /tmp/img /tmp/ts 1991-01-01 2023-12-31 --land_points True

Afterwards, in python, the data can be read as pandas DataFrames.

.. code-block:: python

    >> from esa_cci_sm.interface import CCITs
    >> ds = CCITs("/tmp/ts", ioclass_kws={'read_bulk': True})
    >> ds.read(15, 45)  # lon, lat
                      sm  sm_uncertainty  flag  ...  mode  sensor            t0
    1991-01-01  0.424880        0.094507     0  ...     1       2   7670.175000
    1991-01-02       NaN             NaN    24  ...     2       2           NaN
    1991-01-03       NaN             NaN     8  ...     0       2           NaN
    ...              ...             ...   ...  ...   ...     ...           ...
    2023-12-29  0.495448        0.039983     0  ...     3   21536  19720.051575
    2023-12-30  0.426107        0.055060     0  ...     3   16416  19721.147066
    2023-12-31  0.390103        0.030294     0  ...     3   21600  19722.117129


Supported Products
==================

At the moment this package supports ESA CCI soil moisture data versions
3 to 9 in netCDF format (reading and time series creation)
with a spatial sampling of 0.25 degrees.

Contribute
==========

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.

Setup
-----
Setup of a complete development environment with `conda
`_ can be performed using the following
commands:

.. code-block:: shell

  git clone git@github.com:TUW-GEO/esa_cci_sm.git --recursive esa_cci_sm
  cd ./esa_cci_sm
  conda create -n esa_cci_sm python=3.12
  conda activate esa_cci_sm
  pip install -e .[testing]

To checkout our testdata files, you need to have
`Git LFS `_ installed on your machine.

Guidelines
----------

If you want to contribute please follow these steps:

- Fork the esa_cci_sm repository to your account
- Clone the repository, make sure you use ``git clone ... --recursive`` to also get
  the test data repository.
- make a new feature branch from the esa_cci_sm master branch
- Add your feature
- Please include tests for your contributions in one of the test directories.
  We use pytest so a simple function called test_my_feature is enough
- submit a pull request to our master branch

Owner

  • Name: TU Wien - Department of Geodesy and Geoinformation
  • Login: TUW-GEO
  • Kind: organization
  • Location: Vienna, Austria

GitHub Events

Total
  • Create event: 2
  • Issues event: 1
  • Release event: 1
  • Watch event: 4
  • Delete event: 1
  • Issue comment event: 1
  • Push event: 4
  • Pull request event: 5
  • Fork event: 1
Last Year
  • Create event: 2
  • Issues event: 1
  • Release event: 1
  • Watch event: 4
  • Delete event: 1
  • Issue comment event: 1
  • Push event: 4
  • Pull request event: 5
  • Fork event: 1

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 133
  • Total Committers: 8
  • Avg Commits per committer: 16.625
  • Development Distribution Score (DDS): 0.429
Past Year
  • Commits: 7
  • Committers: 2
  • Avg Commits per committer: 3.5
  • Development Distribution Score (DDS): 0.143
Top Committers
Name Email Commits
Wolfgang Preimesberger w****r@g****t 76
Manuel Schmitzer m****r@t****t 45
wpreimes M****3 5
c-hydro 3****o 3
FabioDelogu f****u@c****g 1
dependabot[bot] 4****] 1
pbutting 3****g 1
tscanlon t****n@g****t 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 2
  • Total pull requests: 25
  • Average time to close issues: N/A
  • Average time to close pull requests: about 11 hours
  • Total issue authors: 2
  • Total pull request authors: 3
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.48
  • Merged pull requests: 24
  • Bot issues: 0
  • Bot pull requests: 4
Past Year
  • Issues: 1
  • Pull requests: 3
  • Average time to close issues: N/A
  • Average time to close pull requests: 39 minutes
  • Issue authors: 1
  • Pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.33
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 2
Top Authors
Issue Authors
  • Adeaem (1)
  • MauriceEric (1)
Pull Request Authors
  • wpreimes (20)
  • dependabot[bot] (4)
  • pbutting (1)
Top Labels
Issue Labels
Pull Request Labels
dependencies (4) github_actions (2)

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 5
proxy.golang.org: github.com/tuw-geo/esa_cci_sm
  • Versions: 5
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 7.0%
Average: 8.2%
Dependent repos count: 9.3%
Last synced: 6 months ago

Dependencies

.github/workflows/ci.yml actions
  • actions/checkout v2 composite
  • actions/download-artifact v2 composite
  • actions/upload-artifact v2 composite
  • conda-incubator/setup-miniconda v2 composite
  • pypa/gh-action-pypi-publish v1.4.1 composite
environment.yml conda
  • netcdf4
  • pandas
  • pip
  • pyresample
setup.py pypi