An statistician Writes in a Newspaper

Anuncio
Periodismo de datos
Octava sesión formativa
Un estadístico escribe en el periódico
Juan José Gibaja Martíns
DBS - Universidad de Deusto
@jjgibaja
Madrid, 14 de diciembre de 2012
Homogeneidad
Homogeneidad
Homogeneidad
Homogeneidad
Mezcla
Mezcla
Homogeneidad
Mezcla
Índice
1) Algunos conceptos estadísticos
2) Varianza en colectivos pequeños
3) Data dredging
4) ¿Demasiado ajustado?
5) Tienes que relativizar
Algunos conceptos estadísticos
Varianza
N
2
Perspectiva (histórica
x −μ )
2
σ =
∑
i =1
i
N
X
Varianza
N
Perspectiva histórica
2
σ =
2
∑ (x i −μX )
i =1
N
Coeficiente de variación
σ
CV
=
μ histórica
Perspectiva
Covarianza
N
Perspectiva
histórica
∑ ( xi − μ X )( yi − μ Y )
σ XY =
i=1
N
Covarianza
Perspectiva histórica
Correlación
Perspectiva histórica
σ XY
ρ XY =
σ xσ y
Correlación
Perspectiva histórica
Varianza en colectivos pequeños
Varianza en colectivos pequeños
Hospital pequeño
Hospital grande
15 nacimientos/día histórica
45 nacimientos/día
Perspectiva
P (niña)=0,5
¿En cuál de los dos hospitales es más
probable que en un día concreto el
porcentaje de niñas supere el 60%?
Varianza en colectivos pequeños
Perspectiva histórica
http://www.r-project.org/
Varianza en colectivos pequeños
Perspectiva histórica
replicates<-10000
P<-0.5
ninas.gr<-rbinom(replicates,45,P)
ninas.peq<-rbinom(replicates,15,P)
prop.ninas.gr<-ninas.gr/45
prop.ninas.peq<-ninas.peq/15
par(mfrow=c(1,2))
hist(prop.ninas.gr,xlim=range(0,1))
hist(prop.ninas.peq,xlim=range(0,1))
Varianza en colectivos pequeños
Perspectiva histórica
Varianza en colectivos pequeños
P<-0.5
max<-5000
prob<-rep(NA,max-9)
for(size in 10:max)
{
prob[size]<-rbinom(1,size,P)/size
}
plot(prob,type="n",xlab=”size”)
abline(h=P,col=2)
number.ll95 <- P - 1.96 * sqrt((P*(1-P)) / (number.seq))
number.ul95 <- P + 1.96 * sqrt((P*(1-P)) / (number.seq))
number.ll999 <- P - 3.29 * sqrt((P*(1-P)) / (number.seq))
number.ul999 <- P + 3.29 * sqrt((P*(1-P)) / (number.seq))
lines(number.seq,number.ll95)
lines(number.seq,number.ul95)
lines(number.seq,number.ll999,lty=2)
lines(number.seq,number.ul999,lty=2)
points(prob)
Perspectiva histórica
Varianza en colectivos pequeños
Perspectiva histórica
Varianza en colectivos pequeños
Perspectiva histórica
Varianza en colectivos pequeños
Perspectiva histórica
Varianza en colectivos pequeños
Perspectiva histórica
Varianza en colectivos pequeños
Perspectiva
histórica
MORALEJA
No debemos extrañarnos
ante la existencia de
colectivos atípicos si son de
reducido tamaño.
Data dredging
¿Data dredging?
Hipótesis (nula)
Perspectiva histórica
p-valor (índice de compatibilidad)
Evidencia empírica
α
umbral
p−valor<α → Rechazar hipótesis
¿Data dredging?
require(MASS)
replicates<-10000
sample.size<-20
rho<-0
Sigma<-matrix(c(1,rho,rho,1),2,2)
corr<-rep(NA,replicates)
for(i in 1:replicates)
{
x<-mvrnorm(sample.size,c(0,0),Sigma)
corr[i]<-cor(x)[1,2]
}
dev.new()
hist(corr)
Perspectiva histórica
# Probabilidad de abs(correlacion) mayor que k
k<-0.45
sum(abs(corr)>k)/replicates
# Aproximación de Fisher
2*(1-pnorm(sqrt(sample.size-3)*(atanh(k)-atanh(rho))))
¿Data dredging?
Perspectiva histórica
¿Data dredging?
Perspectiva histórica
Cor-.= -0,36
¿Data dredging?
Perspectiva histórica
¿Data dredging?
Perspectiva histórica
> # Probabilidad de abs(correlacion) mayor que k
> k<-0.45
> sum(abs(corr)>k)/replicates
[1] 0.0482
> # Aproximación de Fisher
> 2*(1-pnorm(sqrt(sample.size-3)*(atanh(k)-atanh(rho))))
[1] 0.0457
¿Data dredging?
Perspectiva histórica
http://xkcd.com/882/
¿Data dredging?
MORALEJA
Perspectiva histórica
Si analizamos datos sin tener
muy claro qué es lo que
estamos buscando
seguramente encontraremos
“algo”, que muy probablemente,
será puro ruido.
¿Demasiado ajustado?
¿Demasiado ajustado?
En
toda
información
hay
Perspectiva histórica
dos componentes:
SEÑAL
+
RUIDO
Señal y ruido
¿Demasiado ajustado?
set.seed(123)
puntos<-20
x <- seq(-5,5,length.out=puntos)
y <- -(1/5)*x^2
z <- -(1/5)*x^2+0.5*rnorm(puntos)
plot(x,z,asp=1)
lines(x,y)
lines(x,z,col=2)
modelo<-lm(z~x+I(x^2))
summary(modelo)
fmlax<-paste("I(x^",1:(puntos-1),")",sep="")
fmla<-paste("z~",paste(fmlax, collapse="+"),sep="")
modelo2<-lm(as.formula(fmla))
summary(modelo2)
Perspectiva histórica
¿Demasiado ajustado?
Perspectiva histórica
¿Demasiado ajustado?
Perspectiva histórica
¿Demasiado ajustado?
Perspectiva histórica
¿Demasiado ajustado?
Modelo demasiado simple
Perspectiva histórica
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -1.77129
0.41568 -4.261 0.00047 ***
x
-0.01524
0.13697 -0.111 0.91262
Residual standard error: 1.859 on 18 degrees of freedom
Multiple R-squared: 0.0006875, Adjusted R-squared:
-0.05483
F-statistic: 0.01238 on 1 and 18 DF, p-value: 0.9126
¿Demasiado ajustado?
Modelo adecuado
Perspectiva histórica
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.13693
0.17064
0.802
0.433
x
-0.01524
0.03741 -0.407
0.689
I(x^2)
-0.20718
0.01383 -14.978 3.17e-11 ***
--Residual standard error: 0.5077 on 17 degrees of freedom
Multiple R-squared: 0.9296,
Adjusted R-squared: 0.9213
F-statistic: 112.3 on 2 and 17 DF, p-value: 1.599e-10
¿Demasiado ajustado?
Modelo demasiado complejo
Perspectiva histórica
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.356e-01
NA
NA
NA
I(x^1)
1.898e+00
NA
NA
NA
I(x^2)
-7.959e-01
NA
NA
NA
I(x^3)
-4.841e+00
NA
NA
NA
. . .
. . .
I(x^18)
2.830e-08
NA
NA
NA
I(x^19)
-1.112e-07
NA
NA
NA
Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:
1,
Adjusted R-squared:
F-statistic:
NaN on 19 and 0 DF, p-value: NA
NaN
¿Demasiado ajustado?
Perspectiva histórica
OVERFITTING
Estamos prestando más atención al ruido
del tren que a la melodía del violín
¿Demasiado ajustado?
Perspectiva histórica
¿Demasiado ajustado?
Perspectiva histórica
¿Demasiado ajustado?
Perspectiva histórica
¿Demasiado ajustado?
Perspectiva
histórica
MORALEJA
Debemos prestar atención a la
señal e ignorar el ruido.
Debemos encontrar el equilibrio
entre complejidad y ajuste
Tienes que relativizar
Tienes que relativizar
Perspectiva histórica
Tienes que relativizar
Perspectiva histórica
Tienes que relativizar
Perspectiva histórica
Tienes que relativizar
Perspectiva histórica
Tienes que relativizar
# Modelo con datos absolutos
datos<-read.csv(file="DatosDesempleoPib.csv",sep=";")
attach(datos)
plot(parados,pib)
modelo<-lm(pib~parados)
summary(modelo)
abline(modelo)
Perspectiva histórica
# Modelo con datos relativos
parados.r<-parados/pob.16
pib.r<-pib/pob.16
dev.new()
plot(parados.r,pib.r)
modelo.r<-lm(pib.r~parados.r)
summary(modelo.r)
abline(modelo.r)
Tienes que relativizar
Perspectiva histórica
Tienes que relativizar
Perspectiva histórica
Tienes que relativizar
MORALEJA
Perspectiva histórica
Cuidado con las noticias de
tipo “Andalucía encabeza...”
porque, probablemente, lo
único que ocurre es que
Andalucía es la C.A. más
grande
Descargar