agroweather#
See agroweather for the full API reference.
Find the nearest temperature station#
from pyedautils.weather.agroweather import find_nearest_station
station_id = find_nearest_station(47.05, 8.31, sensor="temp")
print(station_id) # 190
Download hourly data for a station#
from pyedautils.weather.agroweather import download_data
df = download_data(station_id, "2024-01-01", "2024-01-03", sensors=["temp", "relhum"])
print(df.head())
# temp relhum
# datetime
# 2024-01-01 00:00:00 1.7 100.0
# 2024-01-01 01:00:00 1.3 100.0
# 2024-01-01 02:00:00 0.7 100.0
# 2024-01-01 03:00:00 0.9 100.0
# 2024-01-01 04:00:00 1.0 100.0
Download data by postal code#
from pyedautils.weather.agroweather import download_data_by_plz
df = download_data_by_plz(6048, "2024-01-01", "2024-01-03")
print(df.head())
# temp relhum rain globrad
# datetime
# 2024-01-01 00:00:00 1.7 100.0 0.0 0.0
# 2024-01-01 01:00:00 1.3 100.0 0.0 0.0
# 2024-01-01 02:00:00 0.7 100.0 0.0 0.0
# 2024-01-01 03:00:00 0.9 100.0 0.0 0.0
# 2024-01-01 04:00:00 1.0 100.0 0.0 0.0
Get all station data#
from pyedautils.weather.agroweather import get_station_data
stations = get_station_data()
print(f"{len(stations)} stations found")
# 217 stations found
print(stations[["id", "name", "lat", "lon"]].head())
# id name lat lon
# 0 189 AESCH-BL 47.466863 7.575196
# 1 360 AGNO-Progetto ViSo-KS 45.997000 8.893944
# 2 94 AIGLE 46.314537 6.979451
# 3 78 AMBURNEX 46.536925 6.215849
# 4 79 AMBURNEX-COMBE 46.535419 6.218099