Ce document est une proposition de solution pour la session pratique d’introduction à la rédaction de rapports d’analyse sous Rmarkdown. Il s’agit du document final, sensé être obtenu après avoir suivi les directives du sujet.
Les données analysées sont issues d’une publication intitulée “Fluctuating, warm temperatures decrease the effect of a key floral repressor on flowering time in Arabidopsis thaliana” de 2015 (Burghardt et al. 2015)
Dans ces données, plusieurs génotypes d’Arabidopsis thaliana, une plante modèle, ont été phénotypés (leurs caractéristiques morphologiques, leur réponse à l’environnement, ont été mesurés).
On dispose de données liées à la floraison et aux phénotypes des parties aériennes de plantes de différents génotypes. Les fichier csv des données biologiques à étudier est importé et ses premières lignes peuvent être inspectées via la fonction head
:
<- read.csv("data/burghardt_et_al_2015_expt1.csv")
data dim(data)
## [1] 957 15
head(data)
On affiche le nombre de jours jusqu’à floraison pour les différents génotypes, durée de jours, et la température de culture :
$temperature <- factor(data$temperature)
data$day.length = factor(data$day.length)
data
ggplot(data, aes(x = factor(temperature),
y = days.to.flower,
color = genotype )) +
geom_jitter(color = "black")+
geom_boxplot(aes(fill = genotype), alpha = 0.3, size = 1) +
facet_grid(day.length~genotype) +
xlab("Temperature")
On constate qu’une température plus élevée aura tendance à diminuer le temps nécessaire à la floraison. La durée du jour est également influente, car on voit que des jours longs feront fleurir plus vite les plantes.
Il s’agit ici de reproduire le même graphe mais en se demandant si les durées jusqu’à floraison sont significativement impactées par la température. La fonction stat_compare_means
du package ggpubr
permet de rajouter un test de comparaison de moyennes (ici non paramétrqie, le wilcox.test)
<- list(c("12", "22"))
comparisons ggplot(data, aes(x = temperature,
y = days.to.flower,
color = genotype )) +
geom_jitter(color = "black")+
geom_boxplot(aes(fill = genotype), alpha = 0.3, size = 1) +
facet_grid(day.length~genotype) +
xlab("Temperature") +
stat_compare_means(comparisons = comparisons, label = "p.signif")
Tout d’abord, on affiche la relation entre le nombre de feuilles et le temps jusqu’à floraison. On distingue les observations réalisées en jours courts ou en jours longs par la couleur :
ggplotly(ggplot(data, aes(x = days.to.flower,
y = rosette.leaf.num,
color = day.length)) + geom_point())
On va expliquer le nombre de feuilles d’une plante au moyen du temps qu’elle a mis a fleurir, et de la longueur des jours lors de la culture (en ajoutant un terme d’interaction).
<- lm(data = data, rosette.leaf.num~days.to.flower*day.length)
lm extract_eq(lm)
\[ \operatorname{rosette.leaf.num} = \alpha + \beta_{1}(\operatorname{days.to.flower}) + \beta_{2}(\operatorname{day.length}_{\operatorname{16}}) + \beta_{3}(\operatorname{days.to.flower} \times \operatorname{day.length}_{\operatorname{16}}) + \epsilon \]
prettify(summary(lm))
Pour nous assurer que le modèle linéaire est correct et interprétable, nous inspectons ses résidus :
gglm(lm)
Ce que l’on peut conclure des résultats du modèle linéaire :
Effet positif significatif du temps jusqu’à floraison sur le nombre de feuilles : augmenter ce temps de une unité fait augmenter le nombre de feuille de 0.53. (pour le niveau référence de la langueur de jour)
Effet négatif significatif de l’allongement du jour : pour le niveau référence du temps de floraison, passer de 8j à 16j de culture diminue le nombre moyen de feuilles de 14 environ.
L’interaction positive est significative : il y a un changement de pente entre la droite de régression sur la durée de floraison, suivant que les jours soient longs ou courts. A 16 jours, la nombre de feuilles augmente plus fortement sous l’effet du temps jusqu’à floraison qu’ à 8j.
A work by Océane Cassan
PhD student in biostatistcics and bioinformatics