11.2.2 Quadratische Diskriminanzanalyse (QDA)

# code LDA:

data(iris)

set.seed(123)
train <- sample(nrow(iris),round(nrow(iris)*2/3))
test <- (1:nrow(iris))[-train]
library(MASS)
res <- lda(iris[train,-5],iris[train,5])
res.pred <- predict(res,iris[test,-5])

table(iris[test,5],res.pred$class)
setosa versicolor virginica
setosa 14 0 0
versicolor 0 17 2
virginica 0 0 17

pdf("lda1.pdf",width=5,height=5)
par(mar=c(4,4,1,1))
plot(res,abbrev=2,col=as.numeric(iris[train,5]))
points(res.pred$x,col=iris[test,5],pch=as.numeric(res.pred$class))
dev.off()