Recent, am lucrat la un proiect de învățare automată legat de energia regenerabilă, care a necesitat date istorice despre prognoza meteo din mai multe orașe.

În ciuda cercetărilor intense, mi-a fost greu să găsesc sursa bună de date. Majoritatea site-urilor web restricționează accesul la ultimele două săptămâni de date istorice. Dacă aveți nevoie de mai mult, trebuie să plătiți. În cazul meu, aveam nevoie de cinci ani de date – prognoză istorică orară, care poate fi costisitoare.

Cerințele mele sunt …

1. Gratuit – cel puțin în perioada de încercare

Nu este nevoie să furnizați informații despre cardul de credit.

2. Flexibil

Flexibil pentru a schimba intervalul de prognoză, perioadele de timp, locațiile.

ad-banner

3. Reproductibil

Ușor de reprodus și implementat în faza de producție.

În cele din urmă, am decis să folosesc date de la Vremea mondială online. Acest lucru mi-a luat mai puțin de două minute pentru a mă abona la API-ul gratuit de încercare gratuit – fără a completa informațiile despre cardul de credit. (500 de cereri gratuite / cheie / zi timp de 60 de zile, începând cu 30 mai 2019).

Obtineti date istorice despre prognoza meteo in format CSV folosind
https://www.worldweatheronline.com/developer/signup.aspx

Puteți încerca solicitările în format JSON sau XML aici. Rezultatul este JSON imbricat, care avea nevoie de un pic de pre-procesare înainte de a se hrăni cu modelele ML. Prin urmare, am scris câteva scripturi pentru a le analiza în pandas DataFrames și a le salva ca CSV pentru utilizare ulterioară.

Vă prezentăm pachetul wwo-hist

Acest pachetul wwo-hist este folosit pentru a prelua și analiza datele meteo istorice din Vremea mondială online în pandas DataFrame și fișier CSV.

Intrare: api_key, location_list, start_date, end_date, frecvență

Ieșire: nume_locatie.csv

Nume coloane de ieșire: data_time, maxtempC, mintempC, totalSnow_cm, sunHour, uvIndex, uvIndex, moon_illumination, moonrise, moonons, sunrise, sunset, DewPointC, FeelsLikeC, HeatIndexC, WindChillC, WindGustKmph, cloudcover, umiditate, precipMM, ventoC, temperaturaC, temperatura

Instalați și importați pachetul:

pip install wwo-hist
# import the package and function
from wwo_hist import retrieve_hist_data

# set working directory to store output csv file(s)
import os
os.chdir(".YOUR_PATH")

Exemplu de cod:

Specificați parametrii de intrare și apelați retrieve_hist_data (). Te rog viziteaza repo meu github pentru mai multe informații despre configurarea parametrilor.

Aceasta va prelua Interval de 3 ore date meteorologice istorice pentru Singapore și California din 11 decembrie 2018 la 11 martie 2019, salvați ieșirea în variabila hist_weather_data și CSV files.frequency = 3

FREQUENCY = 3
START_DATE = '11-DEC-2018'
END_DATE = '11-MAR-2019'
API_KEY = 'YOUR_API_KEY'
LOCATION_LIST = ['singapore','california']

hist_weather_data = retrieve_hist_data(API_KEY,
                                LOCATION_LIST,
                                START_DATE,
                                END_DATE,
                                FREQUENCY,
                                location_label = False,
                                export_csv = True,
                                store_df = True)
Aceasta este ceea ce veți vedea în consola dvs.
1611526805 679 Obtineti date istorice despre prognoza meteo in format CSV folosind
CSV (uri) rezultate exportate în directorul dvs. de lucru.
0*gdtco3Zi0Kv03uz9
Verificați ieșirea CSV.

Iată-l! Scriptul detaliat este, de asemenea documentat pe GitHub.


Mulțumesc că ai citit. Vă rugăm să încercați și să-mi spuneți feedback-ul dvs.! Dacă îți place ceea ce am făcut, ia în considerare urmărirea mea GitHub, Mediu, și Stare de nervozitate pentru a obține mai multe articole și tutoriale în flux.