Science des données biologiques 2

Réalisé par le service d'Écologie numérique des Milieux aquatiques, Université de Mons (Belgique)

Préambule

Si vous n’avez jamais utilisé de tutoriel “learnr”, familiarisez-vous d’abord avec son interface ici.

Ne vous trompez pas dans votre adresse mail et votre identifiant Github

N’oubliez pas de soumettre votre réponse après chaque exercice

Conformément au RGPD (Règlement Général sur la Protection des Données), nous sommes tenus de vous informer de ce que vos résultats seront collecté afin de suivre votre progression. Les données seront enregistrées au nom de l’utilisateur apparaissant en haut de cette page. Corrigez si nécessaire ! En utilisant ce tutoriel, vous marquez expressément votre accord pour que ces données puissent être collectées par vos enseignants et utilisées pour vous aider et vous évaluer. Après avoir été anonymisées, ces données pourront également servir à des études globales dans un cadre scientifique et/ou éducatif uniquement.

Régression linéaire polynomiale

Réalisez la régression linéaire polynomiale d’ordre 2 de la variable y en fonction de la variable x sur le jeu de données df. Vous avez à votre dispositon un nuage de points et un résumé des données pour avoir une première connaissance de données.

# copie du chunk regpoly-init
# edition de l'exercice 
set.seed(42)

x <- seq(from = 1, to = 10, by = 0.25)
x1 <- x + rnorm(n = length(x))


mod_poly2 <- function(x1, alpha1, alpha2, intercept, random_effect){
  y <- intercept + (alpha1 * x1) + (alpha2 * (x1^2)) 
  y + rnorm(n = length(x1), sd = random_effect)
}

df <- tibble(
  x = x1,
  y = mod_poly2(x1 = x1, alpha1 = 2, alpha2 = 2.5, intercept = 55, random_effect = 10)
)
# Résumé des données
summary(df)
# 
#snippet
summary(lm. <- lm(data = DF,
  YNUM ~  XNUM + I(XNUM^2)))
lm. %>.% (function (lm, model = lm[["model"]], vars = names(model))
  chart(model, aes_string(x = vars[2], y = vars[1])) +
  geom_point() +
  stat_smooth(method = "lm", formula = y ~ x + I(x^2)))(.)
summary(lm. <- lm(data = df,
  y ~  x + I(x^2)))
lm. %>.% (function (lm, model = lm[["model"]], vars = names(model))
  chart(model, aes_string(x = vars[2], y = vars[1])) +
  geom_point() +
  stat_smooth(method = "lm", formula = y ~ x + I(x^2)))(.)
# TODO 

Suite à votre analyse répondez aux questions suivantes

Quiz

Régression linéaire simple ou polynomiale

Réalisez une régression linéaire simple et une régression linéaire polynomiale d’ordre 2 de la variable y en fonction de la variable x sur le jeu de données df. Utilsez le critère d’Akaike afin de déterminer le meilleur modèle. Vous avez à votre dispositon un nuage de points et un résumé des données pour avoir une première connaissance de données.

# edition de l'exercice 
set.seed(42)

x <- seq(from = 1, to = 10, by = 0.25)
x1 <- x + rnorm(n = length(x))


mod_poly2 <- function(x1, alpha1, alpha2, intercept, random_effect){
  y <- intercept + (alpha1 * x1) + (alpha2 * (x1^2)) 
  y + rnorm(n = length(x1), sd = random_effect)
}

df <- tibble(
  x = x1,
  y = mod_poly2(x1 = x1, alpha1 = 2, alpha2 = 2.5, intercept = 55, random_effect = 10)
)

lm_lin_simp <- lm(df, formula = y ~ x )
lm_ls_coef <- broom::tidy(lm_lin_simp)
lm_ls_param <- broom::glance(lm_lin_simp)

lm_lin_poly <- lm(df, formula = y ~ x + I(x^2))
lm_lp_coef <- broom::tidy(lm_lin_poly)
lm_lp_param <- broom::glance(lm_lin_poly)
# résumé 
summary(df)
#
#
# snippet
summary(lm. <- lm(data = DF,
  YNUM ~  XNUM + I(XNUM^2)))
lm. %>.% (function (lm, model = lm[["model"]], vars = names(model))
  chart(model, aes_string(x = vars[2], y = vars[1])) +
  geom_point() +
  stat_smooth(method = "lm", formula = y ~ x + I(x^2)))(.)
# snippet (suite)
summary(lm. <- lm(data = DF, YNUM ~ XNUM))
lm. %>.% (function (lm, model = lm[["model"]], vars = names(model))
  chart(model, aes_string(x = vars[2], y = vars[1])) +
  geom_point() +
  stat_smooth(method = "lm", formula = y ~ x))(.)
# snippet (suite)
AIC(lm.)
summary(lm_lin_poly <- lm(data = df,
  y ~  x + I(x^2)))
summary(lm_lin_simp <- lm(data = df,
  y ~  x ))
AIC(lm_lin_poly, lm_lin_simp)
# TODO 

Suite à votre analyse répondez aux questions suivantes

Quiz

Conclusion

Vous venez de terminer votre séance d’exercice.

Laissez nous vos impressions sur cet outil pédagogique ou expérimentez encore dans la zone ci-dessous. Rappelez-vous que pour placer un commentaire dans une zone de code R, vous devez utilisez un dièse (#) devant vos phrases.

# Ajout de commentaires 
# ...
# Not yet...

Guyliann Engels & Philippe Grosjean