RRégressionStatistique

Régression linéaire simple avec R

Dans la continuité du précédent billet, en utilisant le même jeu de données, je réalise cette fois-ci la régression linéaire avec R.

Chargement et préparation des données

Les données sont chargées dans un dataframe auquel on adjoint un champ DMA en faisant la somme (via apply) des autres quantités:

> dechets <- read.csv2("C:/RTI/Stats/dechets_2013_par_dept.csv", stringsAsFactors=F)
> dechets <- dechets[dechets$Departement != "France",]
> dechets$DMA <- apply(dechets[,(3:9)],1,sum, na.rm=T)
>

Réalisation de la régression linéaire

On peut noter que l’on retrouve les mêmes coefficients qu’avec les fonctions Oracle REGR_SLOPE, REGR_INTERCEPT & REGR_R2:

> res <- lm(DMA~Population.totale.desservie, data=dechets)
> 
> summary(res)

Call:
lm(formula = DMA ~ Population.totale.desservie, data = dechets)

Residuals:
    Min      1Q  Median      3Q     Max 
-289411  -34913  -17616   42107  216689 

Coefficients:
                             Estimate Std. Error t value Pr(>|t|)    
(Intercept)                 3.354e+04  1.314e+04   2.553   0.0122 *  
Population.totale.desservie 5.405e-01  1.641e-02  32.933    
> coef(res)
                (Intercept) Population.totale.desservie 
               3.353637e+04                5.405394e-01 
>

Affichage du nuage de points et de la droite de régression

On peut enfin représenter notre échantillon ainsi que la droite de régression afin d’appréhender visuellement l’adéquation de la droite de régression avec les données collectées:

> plot(dechets$Population.totale.desservie,dechets$DMA, main="Tonnes de déchets ménagers et assimilés par habitants", pch=20, xlab="Nombre d'habitants", ylab="Tonnes de DMA")
> abline(res, col="red", lwd=3)

regr

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *