Krocząca średnia roczna i średnia bieżąca temperatury
Jako analityk danych w centrum badań meteorologicznych chcesz uzyskać wygładzoną w czasie średnią roczną temperaturę dla każdego stanu, śledząc jej zmiany na przestrzeni lat. Następnie porównasz średnią temperaturę z bieżącego roku z kroczącą średnią rocznych temperatur z poprzednich pięciu lat.
Wspólne wyrażenie tablicowe (CTE) oblicza roczną średnią z miesięcznych średnich temperatur dla każdego stanu. Ponieważ w każdym stanie znajduje się tylko jedna stacja meteorologiczna, grupowanie według stanu jest równoważne grupowaniu według stacji.
To ćwiczenie jest częścią kursu
Analiza szeregów czasowych w PostgreSQL
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
-- Running average of the yearly avg temperature
WITH yearly AS(
SELECT
state,
DATE_PART('year', year_month)::INTEGER AS year,
AVG(t_monthly_avg) AS yearly_avg
FROM temperatures_monthly JOIN temperature_stations USING(station_id)
WHERE t_monthly_avg > -9999
GROUP BY state, year
)
SELECT
state,
year,
yearly_avg,
___ OVER (
___
___
ROWS BETWEEN ___)
AS running_yearly_avg
FROM yearly
ORDER BY state, year;