heigeo / climata

Python library for loading and iterating over climate and flow time series data (from ACIS/NOAA RCCs, CoCoRaHS, Hydromet/USBR, CNRFC ESP/NWS, SNOTEL/AWDB/NRCS, and NWIS/USGS)
http://climata.houstoneng.net
MIT License
83 stars 14 forks source link
acis api climate data-loader epa hydromet snotel usgs wqx

.. image:: https://raw.githubusercontent.com/heigeo/climata-viewer/master/app/images/logo-small.png :target: http://climata.houstoneng.net :alt: Climata :align: center

climata is a pythonic interface for loading and processing time series data from climate and flow monitoring stations and observers. climata leverages a number of webservices as listed below. climata is powered by wq.io <http://wq.io/wq.io>_, and shares its goal of maximizing the reusability of data parsing code, by smoothing over some of the differences between various data formats.

.. image:: https://img.shields.io/pypi/v/climata.svg :target: https://pypi.python.org/pypi/climata :alt: Latest PyPI Release

.. image:: https://img.shields.io/github/release/heigeo/climata.svg :target: https://github.com/heigeo/climata/releases :alt: Release Notes

.. image:: https://img.shields.io/pypi/l/climata.svg :target: https://github.com/heigeo/climata/blob/master/LICENSE :alt: License

.. image:: https://img.shields.io/github/stars/heigeo/climata.svg :target: https://github.com/heigeo/climata/stargazers :alt: GitHub Stars

.. image:: https://img.shields.io/github/forks/heigeo/climata.svg :target: https://github.com/heigeo/climata/network :alt: GitHub Forks

.. image:: https://img.shields.io/github/issues/heigeo/climata.svg :target: https://github.com/heigeo/climata/issues :alt: GitHub Issues

|

.. image:: https://img.shields.io/travis/heigeo/climata.svg :target: https://travis-ci.org/heigeo/climata :alt: Travis Build Status

.. image:: https://img.shields.io/pypi/pyversions/climata.svg :target: https://pypi.python.org/pypi/climata :alt: Python Support

Getting Started

.. code:: bash

# Recommended: create virtual environment
# python3 -m venv venv
# . venv/bin/activate
pip install climata

See https://github.com/heigeo/climata to report any issues.

Available Services

=================== ================================================================ ============== ============ Module Classes Data Source Agency/Org. =================== ================================================================ ============== ============ climata.acis StationMetaIO, StationDataIO ACIS NOAA RCCs climata.epa WqxDomainIO WQX EPA climata.cocorahs CocorahsIO CoCoRaHS CoCoRaHS climata.hydromet DailyDataIO, InstantDataIO, AgrimetRecentIO Hydromet USBR climata.nws HydroForecastIO, EnsembleForecastIO, EnsembleSiteIO CNRFC NWS climata.snotel StationIO, StationDailyDataIO, RegionDailyDataIO SNOTEL AWDB NRCS climata.usgs SiteIO, DailyValueIO, InstantValueIO NWIS USGS =================== ================================================================ ============== ============

Usage

Command-line interface:

.. code:: bash

# Load metadata for sites in Upper Klamath Lake basin
wq cat climata.acis.StationMetaIO "basin=18010203" > sites.csv

# Load daily average temperature for these sites
PARAMS="basin=18010203,start_date=2017-01-01,end_date=2017-01-31,parameter=avgt"
wq cat climata.acis.StationDataIO "$PARAMS" > data.csv

Python API:

.. code:: python

from climata.acis import StationDataIO

# Load average temperature for sites in Upper Klamath Lake basin
sites = StationDataIO(
    basin="18010203",
    start_date="2017-01-01",
    end_date="2017-01-31",
    parameter="avgt"
)

# Display site information and time series data
for site in sites:
    print site.name
    for evt in site.data:
        print evt.date, evt.avgt

More Python code examples are available via the climata-viewer website_.

.. _ACIS: http://data.rcc-acis.org/ .. _CoCoRaHS: http://data.cocorahs.org/cocorahs/export/exportmanager.aspx .. _WQX: https://www3.epa.gov/storet/wqx/wqx_getdomainvalueswebservice.html .. _Hydromet: http://www.usbr.gov/pn/hydromet/arcread.html .. _CNRFC: http://www.cnrfc.noaa.gov/ .. _SNOTEL AWDB: http://www.wcc.nrcs.usda.gov/web_service/awdb_web_service_landing.htm .. _NWIS: http://waterdata.usgs.gov/nwis .. _climata.acis: https://github.com/heigeo/climata/blob/master/climata/acis/__init__.py .. _climata.cocorahs: https://github.com/heigeo/climata/blob/master/climata/cocorahs/__init__.py .. _climata.epa: https://github.com/heigeo/climata/blob/master/climata/epa/__init__.py .. _climata.hydromet: https://github.com/heigeo/climata/blob/master/climata/hydromet/__init__.py .. _climata.nws: https://github.com/heigeo/climata/blob/master/climata/nws/__init__.py .. _climata.snotel: https://github.com/heigeo/climata/blob/master/climata/snotel/__init__.py .. _climata.usgs: https://github.com/heigeo/climata/blob/master/climata/usgs/__init__.py .. _climata-viewer website: http://climata.houstoneng.net/datarequests/