Écart-relatif moyen calculé avec R

Il est parfois intéressant de calculer l'écart-relatif moyen qui existe entre des points et la droite de régression linéaire.

Cela donne la divergence moyenne par rapport à la théorie.

Exemple : Gamme étalon permettant un dosage de protides par la méthode de Bradford à 595 nm

Copier le code ci-dessous ou télécharger le script pour réaliser la courbe suivante.

Écart-relatif - gamme étalon
  1. Charger des données (une liste pour les coordonnées en x (abscisses) et une liste pour pour les coordonnées en y (ordonnées))
# Masse contenues dans les cuves en µg
Masse_theorique = c(0,6,12,18,24,30)
# Absorbance à 595 nm – à remplacer par vos propres valeurs
A = c(0,0.140 , 0.308 , 0.434 , 0.618 , 0.780)

2. Rédiger les titres des axes (cette étape permet de les mettre en forme s'ils présentent du texte à mettre en indice ou en exposant) (pour en savoir plus sur la mise en forme d'expressions)

# Pour rédiger des expression mathématiques avec du texte en exposant ou en indice (fonction expression)
x_lab = expression(Masse~~de~~BSA~~en~~µg) # ~~ pour les espaces ici mol.L-1 voit -1 mis en exposant
y_lab = expression(A[595]) # ici la longueur d'onde de 595 nm est mise en indice pour avoir A595

3. Tracer le graphique

# Tracer le graphique
plot(Masse_theorique,A,main="titre à modifier",xlab=x_lab,ylab=y_lab,type="p",xlim=c(0,30), ylim=c(0,0.8),pch=16)
# Ajouter la droite de régression linéaire passant par 0
abline(0, lm(A~Masse_theorique+0)$coefficients,col="red")

4. Afficher une régression linéaire passant par l'origine

# Afficher le coefficient directeur de la droite
cat("Coefficient directeur : \n")
lm(A~Masse_theorique+0)$coefficients

5. Calculer l'écart-relatif moyen séparant les points (pratiques) de la régression (théorique).

# Calculer les valeurs d’absorbance théoriques attendues (régression linéaire)
Absorbance_theorique = lm(A~Masse_theorique)$fitted.values
Absorbance_theorique
# Calculer les écarts relatifs entre valeurs mesurées d’absorbance et régression linéaire (valeurs théoriques)
difference = (A[A>0]- Absorbance_theorique[A>0])/Absorbance_theorique[A>0]*100
difference
# Convertir cette différence en valeur absolue
difference = abs(difference)
# Calculer la différence moyenne : ERM
erm = mean(difference)
cat("Ecart-relatif moyen : ")
erm

Mise à jour de la page nov 2018