[R] plot discriminant analysis

Alain Guillet alain.guillet at uclouvain.be
Wed Oct 14 15:11:55 CEST 2009


Hi,

I did it with

Iris <- data.frame(rbind(iris3[,,1], iris3[,,2], iris3[,,3]), Sp = 
rep(c("s","c","v"), rep(50,3)))
train <- sample(1:150, 75) table(Iris$Sp[train])
z <- lda(Sp ~ ., Iris, prior = c(1,1,1)/3, subset = train)

Then I did plot(z,xlim=c(-10,10),ylim=c(-10,10)) before drawing 
points(predict(z)$x, 
col=palette()[predict(z)$class],xlim=c(-10,10),ylim=c(-10,10)) and all 
the points are superimposed. The only difference I found was the 
different x- and y-axis when I drew them separately, i.e.
plot(z)
plot(predict(z)$x, col=palette()[predict(z)$class])


Alain



Alejo C.S. wrote:
> I'm confused on how is the right way to plot a discriminant analysis made by
> lda function (MASS package).
> (I had attached my data fro reproduction). When I plot a lda object :
>
> X <- read.table("data", header=T)
>
> lda_analysis <- lda(formula(X), data=X)
>
> plot(lda_analysis)
>
> #the above plot is completely different to:
>
> plot(predict(lda_analysis)$x, col=palette()[predict(lda_analysis)$class])
>
> that should be the same graph than the first?
>
> In the second case, I use predict function to obtain the LD1 and LD2
> coordinates of lda_analysis (predict(lda_analysis)$x) and it's respective
> class (predict(lda_analysis)$class), but it seems that the classes are
> different:
>
> table(X$G3, predict(lda_analysis)$class)
>
>         B    G   M
>   B  29    0    3
>   G    0  26   2
>   M   4    0  46
>
>
> any clues?
> Regards,
>   
> ------------------------------------------------------------------------
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>   

-- 
Alain Guillet
Statistician and Computer Scientist

SMCS - Institut de statistique - Université catholique de Louvain
Bureau c.316
Voie du Roman Pays, 20
B-1348 Louvain-la-Neuve
Belgium

tel: +32 10 47 30 50




More information about the R-help mailing list