EEweather — tools for matching to and fetching data from NCEI ISD, TMY3, or CZ2010 weather stations.
EEweather comes with a database of weather station metadata, ZCTA metadata, and GIS data that makes it easier to find the right weather station to use for a particular ZIP code or lat/long coordinate.
Installation
EEweather is a python package and can be installed with pip.
$ pip install eeweather
Supported Sources of Weather Data
NCEI Integrated Surface Database (ISD)
Global Summary of the Day (GSOD)
NREL Typical Meteorological Year 3 (TMY3)
California Energy Commission 1998-2009 Weather Normals (CZ2010)
Features
Match by ZIP code (ZCTA) or by lat/long coordinates
Use user-supplied weather station mappings
Match within climate zones
IECC Climate Zones
IECC Moisture Regimes
Building America Climate Zones
California Building Climate Zone Areas
User-friendly SQLite database of metadata compiled from primary sources
US Census Bureau (ZCTAs, county shapefiles)
Building America climate zone county lists
NOAA NCEI Integrated Surface Database Station History
NREL TMY3 site
Plot maps of outputs
Contributing
Dev installation:
$ pipenv --python 3.6.4 # create virtualenv with python 3.6.4 $ pipenv install --dev # install dev requirements with pipenv $ pipenv install -e . # install package in editable mode $ pipenv shell # activate pipenv virtual environment
Build docs:
$ make -C docs html
Autobuild docs:
$ make -C docs livehtml
Check spelling in docs:
$ make -C docs spelling
Run tests:
$ pytest
Run tests on multiple python versions:
$ tox
Upload to pypi (using twine):
$ python setup.py upload
Use with Docker
To use with docker-compose, use the following:
Run a tutorial notebook (copy link w/ token, open tutorial.ipynb):
$ docker-compose up jupyter
Live-edit docs:
$ docker-compose up docs
Open a shell:
$ docker-compose run --rm shell
Run tests:
$ docker-compose run --rm test
Run the CLI:
$ docker-compose run --rm eeweather --help
Notice Regarding CZ2010 Data
There may be conditions placed on their international commercial use. They can be used within the U.S. or for non-commercial international activities without restriction. The non-U.S. data cannot be redistributed for commercial purposes. Re-distribution of these data by others must provide this same notification.
See further explanation here.
Metadata Yearly Updates
Every year, the metadata database needs to be updated. This can be done by running:
` docker-compose run --rm eeweather rebuild-db `
Release files for eeweather 0.3.30
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| eeweather-0.3.30.tar.gz | 4.2 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| eeweather-0.3.30-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.4 MB
Release files / eeweather-0.3.30.tar.gz
| Download URL | eeweather-0.3.30.tar.gz |
|---|---|
| Size | 4.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
56da7b541d9c8a18e8c232bf0b01beacdb57105308318b9ca810303368a96b35
|
|
BLAKE2b-256 checksum How to use checksums |
9bfcba7abfe93c78368495f595ae47301d917a0cb2bf7b7bcfa22a679b04e647
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 20, 2025.
Transparency logRelease files / eeweather-0.3.30-py3-none-any.whl
| Download URL | eeweather-0.3.30-py3-none-any.whl |
|---|---|
| Size | 4.2 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bd84025132a0ff0ae6f7dd0fc8b075c44b3a69db4dde3474da2326f6526826c2
|
|
BLAKE2b-256 checksum How to use checksums |
70fbf0af15eb588bb737e3aec56072aaa4d46f56a2112b8d737ad68e8dc22fbb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 20, 2025.
Transparency log