CommencerCommencez gratuitement

Moyenne cumulée et moyenne mobile de la température annuelle

En tant que data scientist dans un centre de recherche météorologique, vous souhaitez obtenir une moyenne lissée dans le temps de la température annuelle pour chaque État, au fur et à mesure de son évolution au fil des années. Puis, comparez la température moyenne de l’année en cours avec la moyenne mobile des températures annuelles sur les cinq années précédentes.

Une expression de table commune calcule la moyenne annuelle des températures moyennes mensuelles pour chaque État. Comme il n’y a qu’une seule station météorologique par État, regrouper par État revient à regrouper par station.

Cet exercice fait partie du cours

<cours>Analyse des séries temporelles dans PostgreSQL</cours>
Voir le cours

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

-- 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;
Modifier et exécuter le code