I wanted to know how abnormal the current temperature was, based on 20th-century averages, so I built this dogbot, which does just that. A first version used reanalysis data ; I wanted to switch to station data for easier comparison.
Tweet to @weathercontext with the name of the city you want temperature context for. The dogbot answers in either French, English or German. If no language is specified, the dogbot answers in the language spoken by the majority of the inhabitants of the city if it happens to be one of the three mentioned above (defaults to English otherwise).
Some keywords, such as asking for the city in a different language, lets you change the dogbot's language.
Examples of requests:
- "Paris" -> Shows temperature in Paris, in French
- "Paris, doggy" -> Shows temperatures in Paris, in English
- "Berlin mon chien" -> Shows temperature in Berlin, in French
- "Wrocław" -> Shows temperatures in Wrocław, in English
- "Breslau" -> Shows temperatures in Wrocław, in German
78 cities are covered. From North to South:
- Helsinki
- Tallinn
- Stockholm
- Gothenburg
- Riga
- Edinburgh
- Copenhagen
- Malmö
- Vilnius
- Belfast
- Leeds
- Hamburg
- Szczecin
- Liverpool
- Sheffield
- Dublin
- Bremen
- Nottingham
- Leicester
- Berlin
- Birmingham
- Amsterdam
- Hanover
- Warsaw
- Utrecht
- The Hague
- Münster
- Rotterdam
- Dortmund
- London
- Bochum
- Essen
- Duisburg
- Leipzig
- Wuppertal
- Düsseldorf
- Wrocław
- Dresden
- Cologne
- Bonn
- Frankfurt
- Prague
- Kraków
- Mannheim
- Nuremberg
- Karlsruhe
- Paris
- Stuttgart
- Vienna
- Munich
- Budapest
- Iasi
- Cluj-Napoca
- Zagreb
- Lyon
- Milan
- Galati
- Bologna
- Bucharest
- Craiova
- Constanța
- Nice
- Toulouse
- Marseille
- Bilbao
- Rome
- Zaragoza
- Madrid
- Palma de Mallorca
- Valencia
- Lisbon
- Alicante
- Murcia
- Athens
- Córdoba
- Seville
- Málaga
- Las Palmas
Historical data comes from European Climate Assessment & Dataset (ECA&D), who very nicely put datasets of daily weather data online. Suspicious values (as defined by ECA&D) are not taken into account.
Data for the current week comes from openweathermap.
Data for the current week shows average temperature over a 24-hour period based on hourly data. If you ask for data at 15:00, for instance, the mean temperature for the day will be the average of the hourly values between 15:00 on the previous day and 15:00 on the current day. Do note that this is not the same methodology as the ECA&D dataset mentioned above, which uses midnight-to-midnight means.
To add a language, complete the fields in src/texts.py
and add a column with the city names in your language in data/cities.csv
Klein Tank, A.M.G. and Coauthors, 2002. Daily dataset of 20th-century surface air temperature and precipitation series for the European Climate Assessment. Int. J. of Climatol., 22, 1441-1453. Data and metadata available at http://www.ecad.eu