Francisco Palacios 2014
Pràctiques d’Estadística
P2.2 Ajust de corbes
Francisco Palacios EUETIB-UPC
Curs 2013-2014 Q2 ver1.2
Francisco Palacios 2014
Contingut (I)
2
1. Exemple inicial 2. Diagrama de dispersió 3. Coeficient de correlació 4. Recta d’ajust mínim quadràtic 5. Afegir la recta d’ajust a un diagrama de dispersió 6. Càlcul de prediccions 7. Afegir punts al diagrama de dispersió 8. Coeficient de determinació 𝒓𝒓𝒙𝒙𝒙𝒙𝟐𝟐 9. Ajust de models polinomials 10. Afegir corbes a un diagrama de dispersió 11. Ajust exponencial
Francisco Palacios 2014 3
Estem interessat en dissenyar un programa de detecció precoç de fracàs acadèmic. Una determinada assignatura té un sistema d’avaluació amb 3 proves parcials
Considerem les variables P = Nota del primer parcial F = Nota final de l’assignatura
Volem veure si podem fer servir la variable P (predictor) per estimar la nota final F (variable resposta)
1. Exemple inicial
Per a una mostra de 10 estudiants hem obtingut les següents dades
P 1.3 2.5 3.2 5.0 6.2 5.0 7.2 6.5 9.0 7.1
F 2.0 2.0 3.0 4.0 6.5 4.0 8.5 7.0 10.0 8.0
Francisco Palacios 2014 4
Activitat 1 1. Entra les notes parcials en un vector anomenat x (variable predictora) 2. Entra les notes parcials en un vector anomenat y (variable resposta)
1. Diagrama de dispersió
P 1.3 2.5 3.2 5.0 6.2 5.0 7.2 6.5 9.0 7.1
F 2.0 2.0 3.0 4.0 6.5 4.0 8.5 7.0 10.0 8.0
Francisco Palacios 2014 5
2. Diagrama de dispersió
Activitat 2 Dibuixa un diagrama de dispersió amb l’ordre plot(x,y)
Francisco Palacios 2014 6
2. Diagrama de dispersió
Les següents opcions de la funció plot( ) permeten millorar l’aspecte del diagrama dispersió • pch = 16 (selecciona el plot character 16) • col = 2 (selecciona el color vermell, també val col = “red”) • cex = 1.2 (estableix un factor 1.2 pel paràmetre character expansion) Pots obtenir més informació sobre les opcions que permeten modificar l’aspecte del punts escrivint ?points a la consola de R
Francisco Palacios 2014 7
2. Diagrama de dispersió
Activitat 3 Dibuixa un diagrama de dispersió amb l’ordre plot(x, y, pch=16, col=2, cex=1.2)
Francisco Palacios 2014 8
2. Diagrama de dispersió
Activitat 4 Creus que hi ha una associació lineal entre les variables x i y?
Sí, tenim associació lineal creixent
Francisco Palacios 2014 9
3. Coeficient de correlació
Francisco Palacios 2014 10
3. Coeficient de correlació
Francisco Palacios 2014 11
3. Coeficient de correlació
Francisco Palacios 2014 12
3. Coeficient de correlació
Pots calcular el coeficient de correlació amb l’ordre cor(x,y) La covariància (mostral, 𝒔𝒔�𝒙𝒙𝒙𝒙 ) es pot calcular amb cov(x,y)
La desviació típica (mostral, 𝒔𝒔�𝒙𝒙) es poden calcular amb sd( ) (standard deviation)
Activitat 5 1. Calcula la correlació de les variables x i y 2. Interpreta el valor del coeficient de correlació 3. Verifica que es compleix
𝒓𝒓 = 𝒔𝒔�𝒙𝒙𝒙𝒙𝒔𝒔�𝒙𝒙 𝒔𝒔�𝒙𝒙
r=0.97 associació lineal forta i creixent
Francisco Palacios 2014
Recta d’ajust mínim quadràtic (resum teòric)
13
Francisco Palacios 2014
Recta d’ajust mínim quadràtic: notacions
14
Francisco Palacios 2014
Recta d’ajust mínim quadràtic: notacions
15
Francisco Palacios 2014
Recta d’ajust mínim quadràtic
16
Francisco Palacios 2014
Recta d’ajust mínim quadràtic
17
Francisco Palacios 2014
Recta d’ajust mínim quadràtic
18
Francisco Palacios 2014
Càlcul (manual) de la recta d’ajust mínim quadràtic
19
Francisco Palacios 2014 20
4. Recta d’ajust mínim quadràtic
• Podem calcular la recta d’ajust mínim quadràtic amb l’ordre lm(y~x) (linear model)
• L’expressió 𝐲𝐲~𝒙𝒙 és una fórmula que estableix un model lineal de la forma y=a+b*x per modelar la relació entre x i y
• La funció lm( ) dóna com a resultat el valor òptim dels coeficients a i b
Activitat 6 1. Calcula la recta d’ajust mínim
quadràtic per als vectors de dades x i y
2. Identifica la recta
La recta òptima 𝒙𝒙 = 𝒂𝒂� + 𝒃𝒃�𝒙𝒙 és 𝒙𝒙 = −𝟎𝟎.𝟔𝟔𝟔𝟔𝟔𝟔𝟔𝟔 + 𝟏𝟏.𝟏𝟏𝟔𝟔𝟏𝟏𝟏𝟏 𝒙𝒙
Francisco Palacios 2014 21
5. Afegir la recta d’ajust a un diagrama de dispersió
• L’ordre abline(a,b) dibuixa la recta 𝒙𝒙 = 𝒂𝒂 + 𝒃𝒃𝒙𝒙 al diagrama de dispersió • Pots fer servir les opcions col=“blue”, lwd=3 (line width) per millorar
l’aspecte de gràfic
Activitat 7 Afegeix al digrama de dispersió la recta d’ajust obtinguda a l’activitat 6
Recta òptima: 𝒙𝒙 = −𝟎𝟎.𝟔𝟔𝟔𝟔𝟔𝟔𝟔𝟔 + 𝟏𝟏.𝟏𝟏𝟔𝟔𝟏𝟏𝟏𝟏 𝒙𝒙
Francisco Palacios 2014 22
6. Càlcul de prediccions
• Una forma molt efectiva de calcular prediccions és definir una funció en la forma f = function(x) {a+b*x}
• Les funcions de R poden actuar directament sobre vectors
Activitat 7 1. Defineix una funció per
calcular la nota final estimada a partir de la nota parcial
2. Calcula la nota final corresponent a una nota parcial x=6.8
3. Calcula les notes finals corresponents a les notes parcials x = 4.5, 6.9, 7.2
Recta òptima: 𝒙𝒙 = −𝟎𝟎.𝟔𝟔𝟔𝟔𝟔𝟔𝟔𝟔 + 𝟏𝟏.𝟏𝟏𝟔𝟔𝟏𝟏𝟏𝟏 𝒙𝒙
Francisco Palacios 2014 23
7. Afegir punts al diagrama de dispersió
• Podem afegir punts al diagrama de dispersió amb l’ordre points(x1,y1), on x1 i y1 són vectors que contenen les coordenades dels nous punts
• Podem usar les opcions col (color), pch (plot character) i cex (character expansion) per millorar l’aspecte del nous punts
Activitat 8 Afegeix al diagrama de dispersió els punts definits pels vectors x1 i y1 calculats a l’Activitat 7
Francisco Palacios 2014 24
8. Coeficient de determinació 𝒓𝒓𝟐𝟐
• El coeficient de determinació 𝒓𝒓𝟐𝟐 permet avaluar la qualitat d’ajust d’un model
• Valors de 𝒓𝒓𝟐𝟐 ≥ 𝟎𝟎.𝟗𝟗𝟔𝟔 indiquen que el model és adequat • Valors de 𝒓𝒓𝟐𝟐 ≥ 𝟎𝟎.𝟗𝟗𝟔𝟔 indiquen que el model és molt adequat • Per a un model calculat amb lm( ), l’ordre summary( model) proporciona
informació detallada sobre el model, en particular el valor R-squared • Podem obtenir directament el valor de 𝒓𝒓𝟐𝟐 corresponent a un model amb
l’ordre summary(model)$r.squared
Activitat 8 Calcula el valor de 𝒓𝒓𝟐𝟐 corresponent al model lineal ajustat als vectors x i y
Francisco Palacios 2014 25
8. Coeficient de determinació 𝒓𝒓𝟐𝟐
Activitat 8 Calcula el valor de 𝒓𝒓𝟐𝟐 corresponent al model lineal ajustat als vectors x i y
Francisco Palacios 2014 26
9. Ajust de models polinomials
Podem ajustar un model de la forma 𝒙𝒙 = 𝒂𝒂𝟎𝟎 + 𝒂𝒂𝟏𝟏𝒙𝒙+ 𝒂𝒂𝟐𝟐𝒙𝒙𝟐𝟐 indicant la fórmula 𝐲𝐲~𝒙𝒙 + 𝑰𝑰(𝒙𝒙^𝟐𝟐) a la funció lm( )
Activitat 9 Ajusta un model quadràtic a les dades dels vectors x i y. Usa el coeficient de determinació per avaluar la qualitat d’ajust
Polinomi òptim 𝒙𝒙 = 𝟏𝟏.𝟎𝟎𝟎𝟎𝟏𝟏𝟔𝟔 + 𝟎𝟎.𝟎𝟎𝟏𝟏𝟏𝟏𝟔𝟔 𝒙𝒙 + 𝟎𝟎.𝟎𝟎𝟔𝟔𝟎𝟎𝟔𝟔 𝒙𝒙𝟐𝟐
Bon ajust 𝒓𝒓𝟐𝟐 = 𝟎𝟎.𝟗𝟗𝟔𝟔
Francisco Palacios 2014 27
9. Ajust de models polinomials
Un model de tercer grau (cúbic) 𝒙𝒙 = 𝒂𝒂𝟎𝟎 + 𝒂𝒂𝟏𝟏𝒙𝒙+ 𝒂𝒂𝟐𝟐𝒙𝒙𝟐𝟐 + 𝒂𝒂𝟎𝟎𝒙𝒙𝟎𝟎 es pot ajustar indicant la fórmula 𝐲𝐲~𝒙𝒙 + 𝑰𝑰 𝒙𝒙^𝟐𝟐 + 𝑰𝑰(𝒙𝒙^𝟎𝟎) a la funció lm( )
Activitat 10 Ajusta un model cúbic a les dades dels vectors x i y. Usa el coeficient de determinació per avaluar la qualitat d’ajust
Polinomi òptim : 𝒙𝒙 = 𝟎𝟎.𝟏𝟏𝟎𝟎𝟔𝟔𝟏𝟏 − 𝟐𝟐.𝟐𝟐𝟏𝟏𝟔𝟔𝟔𝟔 𝒙𝒙 + 𝟎𝟎.𝟔𝟔𝟎𝟎𝟗𝟗𝟔𝟔 𝒙𝒙𝟐𝟐 − 𝟎𝟎.𝟎𝟎𝟎𝟎𝟔𝟔𝟔𝟔 𝒙𝒙^𝟎𝟎
Molt bon ajust 𝒓𝒓𝟐𝟐 = 𝟎𝟎.𝟗𝟗𝟔𝟔
Francisco Palacios 2014 28
10. Afegir corbes a un diagrama de dispersió
• Podem dibuixar una la corba y=f(x) amb l’ordre curve(f(x), add=TRUE ) • Per afegir la corba al diagrama de dispersió generat amb plot(x,y), hem
d’especificar l’opció add=TRUE • Podem usar les opcions col (color) i lwd (line width) per millorar l’aspecte
del gràfic • L’expressió a representar s’escriu (per defecte) usant x com a variable
independent (això no causa cap conflicte amb els noms de vector definits en la sessió de treball)
Activitat 11 Dibuixa un diagrama de dispersió amb les dades dels vectors x i y. Afegeix al gràfic el polinomi cúbic d’ajust calculat a l’Activitat 10
Polinomi òptim : 𝒙𝒙 = 𝟎𝟎.𝟏𝟏𝟎𝟎𝟔𝟔𝟏𝟏 − 𝟐𝟐.𝟐𝟐𝟏𝟏𝟔𝟔𝟔𝟔 𝒙𝒙 + 𝟎𝟎.𝟔𝟔𝟎𝟎𝟗𝟗𝟔𝟔 𝒙𝒙𝟐𝟐 − 𝟎𝟎.𝟎𝟎𝟎𝟎𝟔𝟔𝟔𝟔 𝒙𝒙^𝟎𝟎
Francisco Palacios 2014 29
10. Afegir corbes a diagrama de dispersió
Polinomi òptim : 𝒙𝒙 = 𝟎𝟎.𝟏𝟏𝟎𝟎𝟔𝟔𝟏𝟏 − 𝟐𝟐.𝟐𝟐𝟏𝟏𝟔𝟔𝟔𝟔 𝒙𝒙 + 𝟎𝟎.𝟔𝟔𝟎𝟎𝟗𝟗𝟔𝟔 𝒙𝒙𝟐𝟐 − 𝟎𝟎.𝟎𝟎𝟎𝟎𝟔𝟔𝟔𝟔 𝒙𝒙^𝟎𝟎
Activitat 11
Francisco Palacios 2014 30
12. Ajust de models exponencials
La teoria d’ajust lineal s’aplica models matemàtics de la forma 𝒙𝒙 = 𝒂𝒂 + 𝒃𝒃 𝒙𝒙
Alguns models no lineals poden ser transformar en models lineals mitjançant un canvi de variable adequat
Per a un model exponencial de la forma 𝒙𝒙 = 𝒂𝒂𝒆𝒆𝒃𝒃𝒙𝒙, 1. Prenem logaritmes: 𝐥𝐥𝐥𝐥 𝒙𝒙 = 𝐥𝐥𝐥𝐥 𝒂𝒂 + 𝒃𝒃𝒙𝒙 2. Fem el canvi de variable 𝒙𝒙𝒕𝒕 = 𝒍𝒍𝒍𝒍(𝒙𝒙) 3. Prenem la constant 𝜶𝜶 = 𝐥𝐥𝐥𝐥 (𝒂𝒂) (que implica 𝒂𝒂 = 𝒆𝒆𝜶𝜶) i obtenim
𝒙𝒙𝒕𝒕= 𝜶𝜶 + 𝒃𝒃𝒙𝒙 4. Si la llista de dades transformades (𝒙𝒙,𝒙𝒙𝒕𝒕) admeten un bon ajust
lineal amb la recta 𝒙𝒙𝒕𝒕 = 𝜶𝜶� + 𝒃𝒃� 𝒙𝒙, llavors el model exponencial 𝒙𝒙 = 𝒂𝒂� 𝒆𝒆𝒃𝒃�𝒙𝒙 amb 𝒂𝒂� = 𝒆𝒆𝜶𝜶� s’ajusta bé a les dades originals
Francisco Palacios 2014 31
12. Ajust de models exponencials
Activitat 12 Considerem la llista de punts
on la variable x és la variable predictora i la variable y és la variable resposta. 1. Genera dos vectors x i y amb les dades corresponents 2. Dibuixa un diagrama de dispersió 3. Creus que un model de la forma 𝒙𝒙 = 𝒂𝒂 + 𝒃𝒃𝒙𝒙 és adequat per descriure la
relació entre x i y? 4. Ajusta un model lineal 𝒙𝒙 = 𝒂𝒂 + 𝒃𝒃𝒙𝒙 i valora qualitat de l’ajust
X 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5
y 8.3 4.9 3.5 2.1 1.2 0.9 0.5 0.2
Francisco Palacios 2014 32
12. Ajust de models exponencials
Activitat 12
El model no és massa adequat 𝒓𝒓𝟐𝟐 = 𝟎𝟎.𝟔𝟔𝟎𝟎𝟔𝟔
Francisco Palacios 2014 33
12. Ajust de models exponencials
Activitat 13 1. Calcula el vector de dades transformades y1=log(y) 2. Dibuixa un diagrama de dispersió de les dades x i y1 3. Creus que un model de la forma 𝐲𝐲𝟏𝟏 = 𝜶𝜶 + 𝒃𝒃𝒙𝒙 és adequat per descriure
la relació entre x i y1? 4. Ajusta un model lineal 𝐲𝐲𝟏𝟏 = 𝜶𝜶 + 𝒃𝒃𝒙𝒙 i valora qualitat de l’ajust
El model linealitzat és molt adequat 𝒓𝒓𝟐𝟐 = 𝟎𝟎.𝟗𝟗𝟔𝟔𝟎𝟎𝟎𝟎
Francisco Palacios 2014 34
12. Ajust de models exponencials
Activitat 14 1. Observa el valor els coeficients òptims del model linealitzat
𝐲𝐲𝟏𝟏 = 𝜶𝜶� + 𝒃𝒃�𝒙𝒙 amb l’ordre summary(mod2)$coefficients 2. Calcula el valor del coeficient 𝒂𝒂� = 𝒆𝒆𝜶𝜶� model exponencial ajustat
𝒙𝒙 = 𝒂𝒂� 𝒆𝒆𝒃𝒃�𝒙𝒙 3. Afegeix la corba exponencial ajustada al diagrama de dispersió
Francisco Palacios 2014 35
12. Ajust de models exponencials
Activitat 14
Corba exponencial ajustada 𝒙𝒙 = 𝟔𝟔.𝟗𝟗𝟎𝟎𝟏𝟏𝟔𝟔 𝒆𝒆−𝟏𝟏.𝟎𝟎𝟎𝟎𝟎𝟎 𝒙𝒙