library(MASS)
data(painters)
painters
#
#  Examen de los datos agrupados
#
lapply(painters,summary)
boxplot(painters[,-5])
cov.wt(painters[,-5])
#
#  Examen de los datos desagregados
#
library(lattice)
bwplot(Composition + Drawing + Colour + Expression ~ School,
       data=painters,outer=TRUE)
#
#  Esto permite examinar las observaciones en el plano generado
#  por dos variables a la vez; tendremos ocasión de mejorar esto.
#
with(painters,
     plot(Composition,Drawing,type="n"))
with(painters,
     text(Composition,Drawing,
          labels=rownames(painters),
          col=match(School,LETTERS[1:8])))

datos <- split(painters[,1:4],painters[,5])
res <- lapply(datos,cov.wt)
res
lapply(datos,summary)
names(res)
res[[1]]$center

library(denpro)
paracoor(painters[,1:4],
         paletti=match(painters[,5],LETTERS[1:8]))
axis(side=1,at=1:4,labels=colnames(painters)[1:4])
legend(1,1.5,horiz=TRUE,
       legend=LETTERS[1:8],
       text.col=(1:8))
#
# ¿Quiénes puntúan tanto en color y tan poco en expresión?
# (líneas azul cobalto)
#
rownames(painters)[ painters[,5] == "H" ]

data(Sitka)
Sitka[1:5,]
datos <- split(Sitka[,1:3],Sitka[,4])
datos <- lapply(datos,FUN=function(x){ xtabs(size ~ tree+Time,data=x)})
datos.cov <- lapply(datos,cov.wt)

ncontrol <- nrow(datos$control)
nozone   <- nrow(datos$ozone)
datos <- rbind(datos$control,datos$ozone)
paracoor(datos,paletti=c(rep("green",ncontrol),
                         rep("red",nozone)))
legend("bottomright",legend=c("Control","Ozono"),
       text.col=c("green","red"))
