Trabalhei um pouco em cima do seu código e cheguei a plotar as elipses,
mas precisaria revisar o conteúdo de multivariada pra saber se o procedimento
está correto.
De qualquer modo, posto o código para que você veja se é possível
aproveitar algo.
### <code r>
dName <- basename(dURL);
dName
download.file(dURL2, dName,
mode='wb')
file.show(dName)
maraOri <-
read.table('marajoara320amostras.txt', head=FALSE); head(maraOri)
maraNorm <-
data.frame(scale(maraOri)); head(maraNorm)
### Cluster
maraNorm.h <-
hclust(dist(maraNorm)^2, method="ward")
maraGroups <-
cutree(maraNorm.h, 3); maraGroups
maraInitial <-
aggregate(maraNorm, by=list(maraGroups), mean)[,-1]; maraInitial
maraNorm.km1 <-
kmeans(maraNorm,maraInitial)
plot(maraNorm.h,
main="marajoara320amostras")
### PCA
maraNorm.pca <-
princomp(maraNorm)
maraNorm.px <-
predict(maraNorm.pca)
library(MASS)
eqscplot(maraNorm.px[,1:2],type="n",xlab="componente
1",ylab="componente 2")
text(maraNorm.px[,1:2],labels=as.character(maraNorm.km1$cluster),col=as.numeric(maraNorm.km1$cluster),cex=.5)
title("marajoara320amostras")
#identify(maraNorm.px[,1:2]) #
identificar amostras no gráfico de PCA
library(ellipse)
tmp <-
split(data.frame(maraNorm.px[,1:2]), maraGroups)
lapply(tmp, cor)
lapply(tmp, function(x)
lines(ellipse(cor(x), level=0.95, centre=c(mean(x[,1]),mean(x[,2]))),
lty=2))
### </code>