ÎncepețiÎncepe gratuit

Media mobilă și media cumulativă a temperaturii anuale

În calitate de om de știință al datelor la un centru de cercetare meteorologică, dorești să obții o medie a temperaturii anuale netezită în timp pentru fiecare stat, pe măsură ce temperatura acestuia evoluează de-a lungul anilor. Apoi, compară media temperaturii din anul curent cu media mobilă a temperaturilor anuale din ultimii cinci ani.

O expresie de tabel comună calculează media anuală a temperaturii medii lunare pentru fiecare stat. Deoarece există o singură stație meteo per stat, gruparea după stat este echivalentă cu gruparea după stație.

Acest exercițiu face parte din cursul

Analiza seriilor de timp în PostgreSQL

Vezi cursul

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

-- 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;
Editează și rulează codul