Commit 7893ffdc authored by François Févotte's avatar François Févotte

Ex 03-3: style

parent 275baf11
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -2,15 +2,17 @@
title : Analyse de la concentration de CO2 dans l'atmosphère depuis 1958
author : François Févotte
date: avril 2020
options:
css: skeleton_css.css
---
# Gestion des dépendances
### Environnement
## Environnement
```julia; echo=false; results="hidden"
@info "Instantiating project"
@info "* Instantiating project"
```
Nous utilisons Julia dans sa version 1.4.0, sur une architecture matérielle de
......@@ -37,10 +39,10 @@ Pkg.instantiate()
```
### Chargement des dépendances
## Chargement des dépendances
```julia; echo=false; results="hidden"
@info "Loading dependencies"
@info "* Loading dependencies"
```
Tant que nous y sommes, profitons en pour charger dès maintenant les paquets
......@@ -68,10 +70,10 @@ CO2](https://scrippsco2.ucsd.edu/data/atmospheric_co2/primary_mlo_co2_record.htm
fondons l'analyse sur le jeu de données contenant des observations hebdomadaires.
### Téléchargement
## Téléchargement
```julia; echo=false; results="hidden"
@info "Retrieving data"
@info "* Retrieving data"
```
Le jeu de données est téléchargé une seule fois ; c'est une copie locale qui
......@@ -112,10 +114,10 @@ end
```
### Lecture
## Lecture
```julia; echo=false; results="hidden"
@info "Parsing data"
@info "* Parsing data"
```
Les données d'entrée sont stockées au format CSV, et contiennent 44 lignes
......@@ -144,10 +146,10 @@ info(data_raw)
```
### Vérification des données manquantes
## Vérification des données manquantes
```julia; echo=false; results="hidden"
@info "Checking for missing values"
@info "* Checking for missing values"
```
Les relevés étant hebdomadaires, l'écart entre deux dates successives du jeu de
......@@ -168,10 +170,10 @@ Il y a 12 périodes durant lesquelles les données sont manquantes, dont une en
particulier ayant duré 19 semaines en 1964. Le traitement devra en tenir compte.
### Aperçu global des données
## Aperçu global des données
```julia; echo=false; results="hidden"
@info "Plotting raw data"
@info "* Plotting raw data"
```
Une visualisation de l'ensemble des données semble montrer une augmentation
......@@ -225,7 +227,7 @@ annuel, nous allons commencer par interpoler les données à une maille
journalière. Ceci nous permettra de découper le jeu de données en années.
### Travaux sur les dates
## Travaux sur les dates
Il est plus simple d'interpoler entre deux nombres qu'entre deux dates. Dans la
suite, nous adopterons une convention selon laquelle chaque date peut être
......@@ -263,10 +265,10 @@ présence d'années bissextiles, mais rien n'a été fait pour les traiter à pa
l'impact, de l'ordre de 1/365 une année sur 4, a été jugé négligeable a priori.
### Interpolation à la maille journalière
## Interpolation à la maille journalière
```julia; echo=false; results="hidden"
@info "Interpolating daily data"
@info "* Interpolating daily data"
```
On construit un interpolateur linéaire basé sur les mesures de CO2 en fonction
......@@ -358,10 +360,10 @@ plot(xlabel="Jour de l'année", ylabel="Nombre de valeurs")
histogram!(data.day, bins=0:31:365, label=nothing)
```
### Analyse des variations annuelles
## Analyse des variations annuelles
```julia; echo=false; results="hidden"
@info "Fitting yearly oscillations"
@info "* Fitting yearly oscillations"
```
Pour chaque année, on commence par tenter d'extraire la composante oscillante de
......@@ -469,10 +471,10 @@ moyen est suffisamment représentatif pour permettre d'extraire la composante
tendancielle lisse des données.
### Analyse des variations tendancielles
## Analyse des variations tendancielles
```julia; echo=false; output="hidden"
@info "Fitting underlying trend"
@info "* Fitting underlying trend"
```
Nous sommes maintenant prêts à extraire la composante tendancielle des
......@@ -543,10 +545,10 @@ plot!(data.date, α .+ β1 * data.date_num .+ γ*data.date_num.^2, linecolor="re
plot!(data.date, α .+ β2 * data.date_num .+ γ*data.date_num.^2, linecolor="red", label=nothing)
```
### Reconstruction du signal complet et prédiction
## Reconstruction du signal complet et prédiction
```julia; echo=false; output="hidden"
@info "Reconstructing and predicting complete signal"
@info "* Reconstructing and predicting complete signal"
```
Nous avons maintenant tous les éléments nécessaires afin de reconstruire
......@@ -591,10 +593,10 @@ plot!(prediction.date, prediction.theta, label="tendance")
plot!(prediction.date, prediction.val, label="prédiction")
```
### Pour aller plus loin
## Pour aller plus loin
```julia; echo=false
@info "Studying alternate model"
@info "* Studying alternate model"
```
En utilisant des modèles plus complexes, il est possible de mieux caractériser
......@@ -637,4 +639,5 @@ closeall()
<!-- Local Variables: -->
<!-- mode: markdown -->
<!-- ispell-local-dictionary: "french" -->
<!-- End: -->
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment