Aan de slagBegin gratis

Voortschrijdend gemiddelde en moving average van de jaartemperatuur

Als data scientist bij een meteorologisch onderzoekscentrum wil je een tijdsgemiddelde (gesmoorde) waarde van de jaartemperatuur per staat berekenen, terwijl de temperatuur van elke staat in de loop der jaren verandert. Vergelijk daarna de gemiddelde temperatuur van het huidige jaar met de moving average van de jaartemperaturen over de vijf voorgaande jaren.

Een common table expression geeft de jaarlijkse gemiddelde waarde van de maandelijkse gemiddelde temperatuur per staat. Omdat er maar één weerstation per staat is, is groeperen op staat gelijk aan groeperen op station.

Deze oefening maakt deel uit van de cursus

Tijdreeksanalyse in PostgreSQL

Bekijk cursus

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

-- 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;
Code bewerken en uitvoeren