Skip to main content

clean, simple and fast access to public hydrology and climatology data

Project description

clean, simple and fast access to public hydrology and climatology data

Project Status


  • retrieves and parses datasets from the web
  • returns simple python data structures that can be easily pulled into more sophisticated tools for analysis
  • caches datasets locally and harvests updates as needed


Currently, ulmo supports the following datasets / services:

  • California Department of Water Resources Historical Data
  • Climate Prediction Center Weekly Drought
  • CUAHSI WaterOneFlow
  • Lower Colorado River Authority Hydromet and Water Quality Data
  • NASA Daymet weather data
  • National Climatic Data Center Climate Index Reference Sequential (CIRS)
  • National Climatic Data Center Global Historical Climate Network Daily
  • National Climatic Data Center Global Summary of the Day
  • Texas Weather Connection Daily Keetch-Byram Drought Index (KBDI)
  • US Army Corps of Engineers - Tulsa District Water Control
  • USGS National Water Information System
  • USGS Emergency Data Distribution Network services
  • USGS Earth Resources Observation Systems (EROS) services
  • USGS National Elevation Dataset (NED) services


Ulmo depends on a lot of libraries from the scientific python stack (namely: numpy, pytables and pandas) and lxml. There are a couple of ways to get these dependencies installed but it can be tricky if doing it by hand. The simplest way to get things up and running is to use a scientific python distribution that will install everything together. A full list is available on the scipy website but Anaconda / Miniconda is recommended as it is the easiest to set up.

If you are using Anaconda/Miniconda then you can install ulmo from the IOOS channel with the following command:

conda install -c ioos ulmo

Otherwise, follow the instructions below:

Once the requisite scientific python libraries are installed are installed, the most recent release of ulmo can be installed from pypi. Pip is a good way to do that:

pip install ulmo

To install the bleeding edge development version, grab a copy of the source code and run from the root directory:

To setup a development environment using conda:

conda env create -n myenv –file py2_conda_environment.yml (or py3_conda_environment.yml if you want to work with python 3)

source activate myenv (use ‘activate test_environment’ on windows)

python develop


A list of future datasets is kept in on the issue tracker. If there’s a dataset you’d like to see added, please open an issue about it.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
ulmo-0.8.3.tar.gz (72.2 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page