Ejemplos
Tabulación
n<-10000
sample(0:1,n*3,replace=T)->hijos
hijos<-matrix(hijos,ncol=3)
apply(hijos,1,sum)->nhijosf
table(nhijosf)
plot(table(nhijosf))
round(table(nhijosf)/n,3)
Histogramas
n<-300
rnorm(n)->a
hist(a,seq(-4,4,0.5),prob=T)
lines(seq(-4,4,len=100),dnorm(seq(-4,4,len=100)),col=2)
Distribución acumulada
n<-300
sort(rnorm(n))->a
plot(a,1:n,type="l")
lines(a,pnorm(a)*n,col=2)
Falacias
p<-1000
sample(c(-1,1),p,replace=T)->pasos
plot(cumsum(pasos),type="l",ylim=c(-100,100))
table(pasos)
Partículas en movimiento
x<-0
y<-0
for(i in 1:1000){
alfa<-runif(1,0,2*pi)
d<- runif(1)
y<-y+sin(alfa)*d
x<-x+cos(alfa)*d
plot(x,y,pch=16,xlim=c(-10,10),ylim=c(-10,10),asp=1)
}
Regresión lineal
n<-30
x<-runif(n)
y<-x+rnorm(n,0,0.1)
mlxy<-lm(y~x)
plot(x,y)
abline(mlxy)
summary(mlxy)
Estudio del comportamiento de estimadores
n<-30
coefx<-NULL
for(i in 1:1000){
x<-runif(n)
y<-x+rnorm(n,0,0.1)
mlxy<-lm(y~x)
coefx[i]<-mlxy$coef["x"]
}
sort(coefx)->a
length(coefx)->n
plot(a,1:n,type="l")
lines(a,pnorm(a,mean(coefx),sd(coefx))*n,col=2)
Análisis de la varianza
y<-rnorm(15)
x<-factor(rep(1:3,5))
aov(y~x)
summary(aov(y~x))
TukeyHSD(aov(y~x))
plot(TukeyHSD(aov(y~x)))
Análisis de datos
Ejemplo de análisis de un fichero de datos: Los datos coorespondientes a los censos de población activa de los términos municipales de la Región de Murcia se encuentran en el fichero
evolpobmun.dat
se analiza mediante un análisis de correspondencias. En primer lugar se utiliza la función
corresp
de la librería
MASS
y posteriormente se utiliza la función
acb
del fichero de fuentes
funciones.R
. Para terminar se realiza una clasificación de años y municipios en función de los resultados obtenidos de la ordenación precedente.
read.table("http://www.um.es/docencia/emc/datos/evolpobmun.dat",encod="latin1")->x
pairs(x)
pairs(log(x))
pairs(~log(x[,1])+log(x[,5])+log(x[,10]))
apply(x,1,function(x) sum(is.na(x))==0)->selmun
library(MASS)
plot(corresp(x[selmun,]))
source("http://www.um.es/docencia/emc/datos/funciones.R")
acb(x[selmun,])
dibujaacb(acb(x[selmun,]),1,2)
plot(hclust(dist(acb(x[selmun,])$cf[,1:4]),method="ward"),hang=-1)
plot(hclust(dist(acb(x[selmun,])$cc[,1:4]),method="ward"),hang=-1)