Skip to main content

Collect ocean measurements for location and timeframe. Integrates NDBC and TidesAndCurrents datasources.

Project description

seastate

Summary

Collect ocean measurement data based on location and timeframe

Features

  • Closest active station is selected for each measurement
  • Reaches into secondary historical archives when required
  • Returns pandas dataframe compatible dictionaries
  • Available measurements: Tide, wind, water temp, air temp, air pressure, conductivity and swell information
  • Datasources: NOAA NDBC, NOAA Tides and Currents

Installing

pip install seastate

Quick start

from seastate import SeaState
from datetime import datetime

# make SeaState object for specific location
san_diego = SeaState(32,-117)

# retrieve measurements for today
san_diego_today = san_diego.from_date_range(datetime.today())

san_diego_today['tide'] -> [{t: time, v: value, s: stdev}]
san_diego_today['wind']-> [{t: time, v: value, d: direction, g: gust}]
san_diego_today['water_temp']-> [{t: time, v: value}]
san_diego_today['air_temp']-> [{t: time, v: value}]
san_diego_today['air_press']-> [{t: time, v: value}]
san_diego_today['wave']-> [{t: time, v: Wave Height, dpd: Dominant Period, mwd: dpd Direction}]
san_diego_today['conductivity']-> [{t: time, v: value}]

Measurement details for NDBC are here and for Tides and Currents here

API reference

Useful metadata can be accessed through the SeaState object

san_diego = SeaState(32,-117)

# Each measurement has an entry point
san_diego.tide
-> (api.mediator Object)

# The valid keys are:
valid_measurements = {
    'tide',
    'wind',
    'water_temp',
    'air_temp',
    'air_press',
    'wave',
    'conductivity',
}


# the original lat/lon are available
san_diego.lat
-> 32
san_diego.tide._target_lon
-> 32

# the distance of each measurement station to target gps
san_diego.tide.distance
-> xyz kilometers

# and other useful exposed api keys
san_diego.tide.station.name
san_diego.tide.station.id
san_diego.tide.station.lat
san_diego.tide.station.lon

Measurement x API breakdown

Measurement T&C NDBC
tide y y
wind y y
water_temp y y
air_temp y y
air_press y y
wave y
conductivity y

More Examples

Measurements for past 30 days

from seastate import SeaState
from datetime import datetime, timedelta

start = datetime.today()-timedelta(days=30)
end = datetime.today()
san_diego_past_30 = san_diego.measurements_from_date_range(start,end)

Hourly Slices

san_diego_past_30_hourly = san_diego.hourly(start,end) # this returns a single reading per hour
# experimental feature
# no guarantee between APIs that readings will align or exist in all cases

Project details


Download files

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

Source Distribution

seastate-0.2.1.tar.gz (39.1 kB view details)

Uploaded Source

Built Distribution

seastate-0.2.1-py3-none-any.whl (40.1 kB view details)

Uploaded Python 3

File details

Details for the file seastate-0.2.1.tar.gz.

File metadata

  • Download URL: seastate-0.2.1.tar.gz
  • Upload date:
  • Size: 39.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.9

File hashes

Hashes for seastate-0.2.1.tar.gz
Algorithm Hash digest
SHA256 dd692f17a485662f828388f11b922d0beb912dc636e4471e68708f32a25cecfd
MD5 4d59759bb0144c26ed11e7f704226e5e
BLAKE2b-256 74825f5c3aca00e54acaed8255455eb652eb156d75b547f3e915e6d73bace905

See more details on using hashes here.

File details

Details for the file seastate-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: seastate-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 40.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.9

File hashes

Hashes for seastate-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1d489b1b2f2f30b3b4445c6051227f8f6819c68b95a5047b6de1ec6914cfdd0d
MD5 f10d6a6a6a8f25c76f4852810bc0976b
BLAKE2b-256 3a6753df2e9836cc261949200502649d8a0312dc82baa2199176c8fee64874e3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page