TD 6 : Régression linéaire
Transcription
TD 6 : Régression linéaire
TD 6 : Régression linéaire Exercice 1- Régression linéaire simple Un observatoire du devenir de l’étudiant étudie le salaire des étudiants ayant obtenu le DESS ”Qualité agro-alimentaire”. Une enquête est effectuée auprès d’un échantillon de 10 étudiants pris au hasard parmi les anciens élèves. Le tableau suivant donne l’ancienneté T (en nombre d’années depuis l’obtention du diplôme) et le salaire brut annuel S (en kiloeuros). T 3 1 7 2 5 3 1 9 5 4 S 35 32 38 36 37 33 34 38 40 34 (1) Tracer le nuage de points de S en fonction de T : plot(T,S). (2) Calculer le coefficient de corrélation entre T et S : cor(T,S). Est-il significativement non nul (cor.test(T,S)) ? (3) La régression linéaire de T en fonction de S se fait avec l’instruction : modele=lm(S∼T) puis summary(modele). Ecrire l’équation de la droite de régression qui permet de prédire le salaire en fonction de l’ancienneté. On dit que c’est un modèle qui permet d’expliquer le salaire en fonction de l’ancienneté. Constater que le R2 du modèle est le carré du coefficient de corrélation entre T et S. (4) Ajouter sur le nuage de points la droite de régression : abline(modele) (5) Les résidus suivent-ils une loi normale ? (Les résidus sont dans le vecteur modele$residuals) Exercice 2- Régression linéaire multiple sur le fichier perf.xls On essaie de trouver les liens entre la performance d’un athlète et ses mensurations : (1) Faire afficher la matrice de corrélations entre toutes les variables et donner les corrélations significatives (pour cela, il faut utiliser la fonction rcorr du package Hmisc : rcorr(as.matrix(perf )). (2) Faire une régression linéaire multiple permettant de voir quelle variables peuvent expliquer la performance avec l’instruction modele1=lm(Performance∼Poids+taille+diametre+perimetre). Donner les variables qui interviennent de façon significative et le R2 du modèle. (3) Est-ce que les résidus suivent une loi normale ? (4) Regarder s’il y a des résidus atypiques : pour cela, calculer le vecteur des résidus standards resSt=modele1$residuals/sd(modele1$residuals) et regarder s’il y a des valeurs supérieures à 3 ou inférieures à -3 : u=which(abs(resSt)>3) 1 2 Si oui, faire un nouveau dataframe sans ces observations perf2=perf[-u,] l’attacher et refaire un modèle de régression linéaire multiple : modele2=lm(Performance∼Poids+taille+diametre+perimetre). Donner les variables significatives et le R2 . (5) Est-ce que les résidus de ce nouveau modèle suivent une loi normale ? (6) Refaire à nouveau un modèle de régression linéaire multiple en ne gardant que les variables significatives. Ecrire le modèle de prévision de la performance et donner sonr R2 Exercice 3- Régression linéaire multiple sur le fichier family.xls Etude réalisée aux USA sur les origines des stéréotypes liés au sexe. 35 familles choisies au hasard et ayant une fille ainée (ou fille unique) en ”ninth grade” (Troisième). Le père a répondu à un questionnaire sur ses intérêts pour le sport, noté sur une échelle numérique de 0 à 50 (FATH) La mère a répondu au même questionnaire (MOTH) Le professeur d’éducation physique de chacune des filles a noté les performances physiques générales de la fille de 0 à 20 (PROF). La fille a répondu également au questionnaire d’intérêt pour le sport (GIRL). (1) Avec la matrice de corrélations, dire quelles sont les variables corrélées significativement à GIRL. (2) A l’aide d’une régression linéaire multiple, faire un modèle qui explique les résultats de la fille en fonction des résultats des autres personnes. Obtient-on un bon modèle ? Quelles variables interviennent de façon significative ? Y a-t-il des variables qui sont corrélées significativement avec GIRL mais qui n’apparaissent pas significatives dans le modèle de régression. Si oui, expliquer pourquoi. (3) Y a-t-il des résidus atypiques ? (4) Est-ce que les résidus suivent une loi normale ? (5) Ecrire le modèle de prévision de GIRL en fonction des variables significatives.