serum = c(0,0.5,1,1.5,2,2.5,3,3.5,4,4.5,5)
bacteries = c(7.02,5.39,4.98,3.8,2.69,2.41,2.06,1.27,1.29,0.81,0.72)
#Calcul des moyennes
C1 = paste(" Calcul des moyennes ")
C1
## [1] " Calcul des moyennes "
moyenne_serum = sum(serum)/length(serum)
xb = paste("La moyenne de x est de :" ,moyenne_serum)
xb
## [1] "La moyenne de x est de : 2.5"
moyenne_bacteries = sum(bacteries)/length(bacteries)
yb = paste("La moyenne de y est de :", moyenne_bacteries)
yb
## [1] "La moyenne de y est de : 2.94909090909091"
#Calcul de la covariance
C2 = paste(" Calcul de la covariance ")
C2
## [1] " Calcul de la covariance "
p = sum(serum*bacteries)/11
covariance = p-(moyenne_serum*moyenne_bacteries)
cov=paste("La covariance de XY est de :" ,covariance)
cov
## [1] "La covariance de XY est de : -3.02636363636364"
#Calcul variance et des ecart type de X
C3 = paste(" Calcul variance et des ecart type de X ")
C3
## [1] " Calcul variance et des ecart type de X "
var_X= sum((serum-moyenne_serum)^2)/11
varX = paste("La variance de X est de :" ,var_X)
varX
## [1] "La variance de X est de : 2.5"
ecart_type_X = sqrt(var_X)
ecartype_X = paste("l ecart type de X est de :" , ecart_type_X)
ecartype_X
## [1] "l ecart type de X est de : 1.58113883008419"
#Calcul variance et des ecart type de Y
C4 = paste(" Calcul variance et des ecart type de Y ")
C4
## [1] " Calcul variance et des ecart type de Y "
var_Y= sum((bacteries-moyenne_bacteries)^2)/11
varY = paste("La variance de Y est de :" ,var_Y)
varY
## [1] "La variance de Y est de : 3.96760826446281"
ecart_type_Y = sqrt(var_Y)
ecartype_Y = paste("l ecart type de Y est de :" , ecart_type_Y)
ecartype_Y
## [1] "l ecart type de Y est de : 1.99188560526522"
#Calcul du coefficient de corrélation de Pearson
C5 = paste(' Calcul du coefficient de correlation de Pearson ')
C5
## [1] " Calcul du coefficient de correlation de Pearson "
r=covariance/ecart_type_X*ecart_type_Y
R= paste("Le coefficient de relation de pearson est de : ", r)
R
## [1] "Le coefficient de relation de pearson est de : -3.81254956799073"
#Méthode des moindres carrés
C6 = paste(' Methode des moindres carres ')
C6
## [1] " Methode des moindres carres "
droite = paste("y = ax + b")
droite
## [1] "y = ax + b"
alineaire = covariance/var_X
ra = paste("a = ", alineaire)
ra
## [1] "a = -1.21054545454545"
blineaire = moyenne_bacteries - (alineaire*moyenne_serum)
rb = paste("b = ",blineaire)
rb
## [1] "b = 5.97545454545454"
equation = paste(alineaire,"x +",blineaire)
equation
## [1] "-1.21054545454545 x + 5.97545454545454"
plot(serum, bacteries, main = "Nuage de points - Dosage de sérum en fonction de la Quantité de bactéries",
xlab = "Dosage de sérum (mL)", ylab = "Quantité de bactéries (UFC/mL)",
pch = 19, col = "pink")
modele = lm(bacteries ~ serum)
abline(modele,col = "blue")

summary(modele)
##
## Call:
## lm(formula = bacteries ~ serum)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.86436 -0.41409 0.01982 0.24855 1.04455
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 5.9755 0.3439 17.38 3.13e-08 ***
## serum -1.2105 0.1162 -10.41 2.55e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.6096 on 9 degrees of freedom
## Multiple R-squared: 0.9234, Adjusted R-squared: 0.9149
## F-statistic: 108.4 on 1 and 9 DF, p-value: 2.551e-06
#Calcul SCR
C6 = paste( " Calcul SCR ")
C6
## [1] " Calcul SCR "
SCR = sum((bacteries-(5.98-1.2*serum))^2)
sc= paste("la variation non expliqueee est de :",SCR)
sc
## [1] "la variation non expliqueee est de : 3.3582"
residus = resid(modele)
acf(residus,main="Test de Dubin Watson",lag.max = 10)

shapiro_wilk=shapiro.test(residus)
shapiro_wilk
##
## Shapiro-Wilk normality test
##
## data: residus
## W = 0.96308, p-value = 0.8095
qqnorm(residus,main="Diagramme Quantile-Quantile")
qqline(residus,col="green")

#Ajustement linéaire exponentiel
C7 = paste( " Ajustement lineaire exponentiel ")
C7
## [1] " Ajustement lineaire exponentiel "
formule = paste("On suit la forme : y = b*ax")
formule
## [1] "On suit la forme : y = b*ax"
#Calcul de log de Y
cal = paste("Calcul de log(Y)")
cal
## [1] "Calcul de log(Y)"
log_Y = log(bacteries)
log_Ytexte = paste("log(Y)=",log_Y)
log_Ytexte
## [1] "log(Y)= 1.94876321803772" "log(Y)= 1.68454538492091"
## [3] "log(Y)= 1.60542989103656" "log(Y)= 1.33500106673234"
## [5] "log(Y)= 0.989541193613748" "log(Y)= 0.879626747502564"
## [7] "log(Y)= 0.72270598280149" "log(Y)= 0.2390169004705"
## [9] "log(Y)= 0.254642218373581" "log(Y)= -0.210721031315653"
## [11] "log(Y)= -0.328504066972036"
moyenlogY = mean(log_Y)
moyenlogYtexte = paste("La moyenne de log(Y) est de : ", moyenlogY)
moyenlogYtexte
## [1] "La moyenne de log(Y) est de : 0.829095227745611"
ecartly= (log_Y-moyenlogY)
ecartexte = paste("Les ecarts à la moyenne de log(Y):",ecartly)
#calcul de regression
ecartX_logY = sum((serum-mean(serum)*ecartly))
B1 = ecartX_logY / var_X
B1texte = paste("La pente(B1) est de :",B1)
B1texte
## [1] "La pente(B1) est de : 11"
B0 = moyenlogY - B1*mean(serum)
B0texte = paste("L'ordonnée à l'origine (B0) et de:",B0)
B0texte
## [1] "L'ordonnée à l'origine (B0) et de: -26.6709047722544"
aexp = exp(B1)
bexp = exp(B0)
atexte = paste("a =",aexp)
atexte
## [1] "a = 59874.1417151978"
btexte=paste("b=",bexp)
btexte
## [1] "b= 2.61200034546308e-12"
finalexpo=paste("y = ",bexp,"*",aexp,"x")
finalexpo
## [1] "y = 2.61200034546308e-12 * 59874.1417151978 x"
#Affichage de la courbe de régression exponentielle
serum_sequence = seq(min(serum), max(serum), length.out = 100)
chapeau_Y_exp = bexp * aexp^serum_sequence
plot(serum, bacteries, main = "Ajustement exponentiel",
xlab = "Dosage de sérum (mL)", ylab = "Quantité de bactéries (UFC/mL)",
pch = 19, col = "pink")
lines(serum_sequence, chapeau_Y_exp, col = "red", lwd = 2)
legend("topright", legend = c("Données", "Régression exponentielle"),
col = c("pink", "red"), lwd = c(NA, 2), pch = c(19, NA))
abline(modele,col = "blue")

#Coefficient de determination R^2
C8 = paste( " Coefficient de determination R^2 ")
C8
## [1] " Coefficient de determination R^2 "
modele = lm(bacteries~serum)
modeletexte = paste("R^2 pour le modele lineaire est de :", summary(modele)$r.squared )
modeletexte
## [1] "R^2 pour le modele lineaire est de : 0.923365034954547"
chapeau_Y_exp = bexp * aexp^serum_sequence
SCT_exp = sum((bacteries - mean(bacteries))^2)
SCE_exp = sum((chapeau_Y_exp- moyenne_bacteries)^2)
R2_exp = SCE_exp / SCT_exp
R2_exp_texte =paste("R^2 pour le modele exponentiel est de :", R2_exp)
R2_exp_texte
## [1] "R^2 pour le modele exponentiel est de : 1.3798135461578e+23"
#Prevision pour 8ml
C9 = paste( " Prevision pour 8ml ")
C9
## [1] " Prevision pour 8ml "
#Lineaire
y8= alineaire*8+blineaire
y8
## [1] -3.708909
#expo
modexp = 7.2935*exp(-0.463*8)
modexp
## [1] 0.1796012
# test de student 1
resultat_test = t.test(serum, bacteries, paired = FALSE)
print(resultat_test)
##
## Welch Two Sample t-test
##
## data: serum and bacteries
## t = -0.55842, df = 19.021, p-value = 0.5831
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
## -2.132208 1.234026
## sample estimates:
## mean of x mean of y
## 2.500000 2.949091
#test de student 2
r = covariance / (ecart_type_X * ecart_type_Y)
r
## [1] -0.9609188
t = r * sqrt((11 - 2) / (1 - r^2))
t_value = paste("La valeur de la statistique t pour le coefficient de corrélation est de :", t)
t_value
## [1] "La valeur de la statistique t pour le coefficient de corrélation est de : -10.4134463873711"