aov(diet~coag,data=coagulation)
aov(coag~diet,data=coagulation)
summary(aov(coag~diet,data=coagulation))
library(cluster)
?dist
x<-c(5,6,15,16,25,30)
y<-c(5,6,14,15,20,19)
?dist
dist(data.frame(x,y),method="euclidean")
round(dist(data.frame(x,y),method="euclidean"),2)
round(dist(data.frame(x,y),method="euclidean",upper=T),2)
round(dist(data.frame(x,y),method="euclidean",upper=T,lower=F),2)
library(plsgenimics)
library(plsgenomics)
pls.lda
pls.regression
transformy
pls.lda
prcomp
?prcomp
?psl.lda
pls.lda
?pls.lda
pls.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=2,nruncv=0)
data(leukemia)
pls.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=2,nruncv=0)
pls.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=1:4,nruncv=20)
pca.lda <- function (Xtrain, Ytrain, Xtest = NULL, ncomp, nruncv = 0, alpha = 2/3, #
    priors = NULL) #
{#
    ntrain <- nrow(Xtrain)#
    Ytrain <- as.factor(Ytrain)#
    if (is.vector(Xtest)) {#
        Xtest <- matrix(Xtest, 1, length(Xtest))#
    }#
    if (is.null(Xtest)) {#
        Xtest <- Xtrain#
    }#
    if (nruncv == 0 & length(ncomp) > 1) #
        stop("Since length(ncomp)>1, nruncv must be >0")#
    if (nruncv > 0) {#
        ncomp <- pls.lda.cv(Xtrain, Ytrain, ncomp = ncomp, nruncv = nruncv, #
            alpha = alpha, priors = priors)#
    }#
    #pls.out <- pls.regression(Xtrain = Xtrain, Ytrain = transformy(Ytrain), #
        #Xtest = NULL, ncomp = ncomp)#
    pca.out <- prcomp(x = Xtrain)$x[,1:ncomp]#
    Ztrain <- as.data.frame(matrix(pca.out, ntrain, ncomp))#
    Ztrain$y <- Ytrain#
    #Ztest <- as.data.frame(scale(Xtest, center = pls.out$meanX, #
        #scale = FALSE) %*% pls.out$R)#
    Ztest <- as.data.frame(Xtest)#
    if (is.null(priors)) {#
        lda.out <- lda(formula = y ~ ., data = Ztrain)#
    }#
    else {#
        lda.out <- lda(formula = y ~ ., data = Ztrain, prior = priors)#
    }#
    predclass <- predict(object = lda.out, newdata = Ztest)$class#
    return(list(predclass = predclass, ncomp = ncomp))#
}
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=1:4,nruncv=20)
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=2,nruncv=0)
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],ncomp=2,nruncv=0)
pca.lda <- function (Xtrain, Ytrain, Xtest = NULL, ncomp, nruncv = 0, alpha = 2/3, #
    priors = NULL) #
{#
    ntrain <- nrow(Xtrain)#
    Ytrain <- as.factor(Ytrain)#
    if (is.vector(Xtest)) {#
        Xtest <- matrix(Xtest, 1, length(Xtest))#
    }#
    if (is.null(Xtest)) {#
        Xtest <- Xtrain#
    }#
    if (nruncv == 0 & length(ncomp) > 1) #
        stop("Since length(ncomp)>1, nruncv must be >0")#
    #if (nruncv > 0) {#
     #   ncomp <- pls.lda.cv(Xtrain, Ytrain, ncomp = ncomp, nruncv = nruncv, #
      #      alpha = alpha, priors = priors)#
    #}#
    #pls.out <- pls.regression(Xtrain = Xtrain, Ytrain = transformy(Ytrain), #
        #Xtest = NULL, ncomp = ncomp)#
    pca.out <- prcomp(x = Xtrain)$x[,1:ncomp]#
    Ztrain <- as.data.frame(matrix(pca.out, ntrain, ncomp))#
    Ztrain$y <- Ytrain#
    #Ztest <- as.data.frame(scale(Xtest, center = pls.out$meanX, #
        #scale = FALSE) %*% pls.out$R)#
    Ztest <- as.data.frame(Xtest)#
    if (is.null(priors)) {#
        lda.out <- lda(formula = y ~ ., data = Ztrain)#
    }#
    else {#
        lda.out <- lda(formula = y ~ ., data = Ztrain, prior = priors)#
    }#
    predclass <- predict(object = lda.out, newdata = Ztest)$class#
    return(list(predclass = predclass, ncomp = ncomp))#
}
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],ncomp=2,nruncv=0)
leukemia$Y[-(1:3)]
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=2,nruncv=0)
pls.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=2,nruncv=0)
Ytrain=leukemia$Y[-(1:3)]
leukemia$Y[-(1:3)]
pca.lda <- function (Xtrain, Ytrain, Xtest = NULL, ncomp, nruncv = 0, alpha = 2/3, #
    priors = NULL) #
{#
    ntrain <- nrow(Xtrain)#
    Ytrain <- as.factor(Ytrain)#
    if (is.vector(Xtest)) {#
        Xtest <- matrix(Xtest, 1, length(Xtest))#
    }#
    if (is.null(Xtest)) {#
        Xtest <- Xtrain#
    }#
    if (nruncv == 0 & length(ncomp) > 1) #
        stop("Since length(ncomp)>1, nruncv must be >0")#
    #if (nruncv > 0) {#
     #   ncomp <- pls.lda.cv(Xtrain, Ytrain, ncomp = ncomp, nruncv = nruncv, #
      #      alpha = alpha, priors = priors)#
    #}#
    #pls.out <- pls.regression(Xtrain = Xtrain, Ytrain = transformy(Ytrain), #
        #Xtest = NULL, ncomp = ncomp)#
    pca.out <- prcomp(x = Xtrain)$x[,1:ncomp]#
    Ztrain <- as.data.frame(matrix(pca.out, ntrain, ncomp))#
    Ztrain$y <- Ytrain#
    #Ztest <- as.data.frame(scale(Xtest, center = pls.out$meanX, #
        #scale = FALSE) %*% pls.out$R)#
    Ztest <- as.data.frame(Xtest)#
    if (is.null(priors)) {#
        lda.out <- lda(formula = y ~ ., data = Ztrain)#
    }#
    else {#
        lda.out <- lda(formula = y ~ ., data = Ztrain, prior = priors)#
    }#
    predclass <- predict(object = lda.out, newdata = Ztest)$class#
    return(list(pca.out = pca.out, predclass = predclass, ncomp = ncomp))#
}
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=2,nruncv=0)
Xtrain=leukemia$X[-(1:3),]#
Ytrain=leukemia$Y[-(1:3)]#
Xtest=leukemia$X[1:3,]
Xtrain
dim(Xtrain)
dim(Ytrain)
length(Ytrain)
dim(Ytrain)
dim(Xtest)
ntrain <- nrow(Xtrain)#
Ytrain <- as.factor(Ytrain)#
pca.out <- prcomp(x = Xtrain)$x[,1:ncomp]#
Ztrain <- as.data.frame(matrix(pca.out, ntrain, ncomp))#
Ztrain$y <- Ytrain#
Ztest <- as.data.frame(Xtest)
ncomp <- 2#
ntrain <- nrow(Xtrain)#
Ytrain <- as.factor(Ytrain)#
pca.out <- prcomp(x = Xtrain)$x[,1:ncomp]
pca.out
Ztrain <- as.data.frame(matrix(pca.out, ntrain, ncomp))#
Ztrain$y <- Ytrain
Ztrain
Ztest
dim(Ztest)
Ztrain
Ztest <- as.data.frame(Xtest)#
lda.out <- lda(formula = y ~ ., data = Ztrain)
lda.out
predclass <- predict(object = lda.out, newdata = Ztest)$class
predclass
predclass <- predict(object = lda.out, newdata = Ztest)
predclass
leukemia$Y[(1:3)]
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=2,nruncv=0)
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=3,nruncv=0)
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=4,nruncv=0)
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=5,nruncv=0)
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=6,nruncv=0)
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],ncomp=2,nruncv=0)
pca.lda <- function (Xtrain, Ytrain, Xtest = NULL, ncomp, nruncv = 0, alpha = 2/3, #
    priors = NULL) #
{#
    ntrain <- nrow(Xtrain)#
    Ytrain <- as.factor(Ytrain)#
    if (is.vector(Xtest)) {#
        Xtest <- matrix(Xtest, 1, length(Xtest))#
    }#
    if (is.null(Xtest)) {#
        Xtest <- Xtrain#
    }#
    if (nruncv == 0 & length(ncomp) > 1) #
        stop("Since length(ncomp)>1, nruncv must be >0")#
    #if (nruncv > 0) {#
     #   ncomp <- pls.lda.cv(Xtrain, Ytrain, ncomp = ncomp, nruncv = nruncv, #
      #      alpha = alpha, priors = priors)#
    #}#
    #pls.out <- pls.regression(Xtrain = Xtrain, Ytrain = transformy(Ytrain), #
        #Xtest = NULL, ncomp = ncomp)#
    pca.out <- prcomp(x = Xtrain)$x[,1:ncomp]#
    Ztrain <- as.data.frame(matrix(pca.out, ntrain, ncomp))#
    Ztrain$y <- Ytrain#
    #Ztest <- as.data.frame(scale(Xtest, center = pls.out$meanX, #
        #scale = FALSE) %*% pls.out$R)#
    Ztest <- as.data.frame(Xtest)#
    if (is.null(priors)) {#
        lda.out <- lda(formula = y ~ ., data = Ztrain)#
    }#
    else {#
        lda.out <- lda(formula = y ~ ., data = Ztrain, prior = priors)#
    }#
    predclass <- predict(object = lda.out, newdata = Ztest)$class#
    return(list(pca.out = pca.out, Ytrain = Ytrain, predclass = predclass, ncomp = ncomp))#
}
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],ncomp=2,nruncv=0)
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],ncomp=3,nruncv=0)
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],ncomp=4,nruncv=0)
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],ncomp=5,nruncv=0)
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],ncomp=6,nruncv=0)
pls.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=leukemia$X[1:3,],ncomp=2,nruncv=0)
pls.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],ncomp=2,nruncv=0)
leukemia$Y[-(1:3)]
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],ncomp=2,nruncv=0)
X<-pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],ncomp=2,nruncv=0)$pca.out
Xtrain=leukemia$X[-(1:3),]#
Ytrain=leukemia$Y[-(1:3)]#
Xtest=leukemia$X[1:3,]#
#
ncomp <- 2#
ntrain <- nrow(Xtrain)#
Ytrain <- as.factor(Ytrain)#
pca.out <- prcomp(x = Xtrain)$x[,1:ncomp]
Ztrain <- as.data.frame(matrix(pca.out, ntrain, ncomp))#
Ztrain$y <- Ytrain#
Ztest <- as.data.frame(Xtest)
lda.out <- lda(formula = y ~ ., data = Ztrain)#
predclass <- predict(object = lda.out, newdata = Ztest)$class
predclass
Xtrain=leukemia$X[-(1:3),]#
Ytrain=leukemia$Y[-(1:3)]#
Xtest=leukemia$X[-(1:3),]#
#
ncomp <- 2#
ntrain <- nrow(Xtrain)#
Ytrain <- as.factor(Ytrain)#
pca.out <- prcomp(x = Xtrain)$x[,1:ncomp]#
Ztrain <- as.data.frame(matrix(pca.out, ntrain, ncomp))#
Ztrain$y <- Ytrain#
Ztest <- as.data.frame(Xtest)#
lda.out <- lda(formula = y ~ ., data = Ztrain)#
predclass <- predict(object = lda.out, newdata = Ztest)$class
predclass
dim(Xtrain)
pca.out <- prcomp(x = Xtrain)$x[,1:ncomp]
pca.out
prcomp(Xtrain)$x[,1:2]
Ztrain
lda(y~.,data=Ztrain)
predict(lda(y~.,data=Ztrain))
predict(lda(y~.,data=Ztrain))$class
Xtrain=leukemia$X[-(1:3),]#
Ytrain=leukemia$Y[-(1:3)]#
Xtest=leukemia$X[-(1:3),]#
#
ncomp <- 2#
ntrain <- nrow(Xtrain)#
Ytrain <- as.factor(Ytrain)#
pca.out <- prcomp(x = Xtrain)$x[,1:ncomp]#
Ztrain <- as.data.frame(matrix(pca.out, ntrain, ncomp))#
Ztrain$y <- Ytrain#
Ztest <- as.data.frame(Xtest)#
lda.out <- lda(formula = y ~ ., data = Ztrain)#
predclass <- predict(object = lda.out, newdata = Ztrain)$class
predclass
Ytrain
pca.lda <- function (Xtrain, Ytrain, Xtest = NULL, ncomp, nruncv = 0, alpha = 2/3, #
    priors = NULL) #
{#
    ntrain <- nrow(Xtrain)#
    Ytrain <- as.factor(Ytrain)#
    if (is.vector(Xtest)) {#
        Xtest <- matrix(Xtest, 1, length(Xtest))#
    }#
    if (is.null(Xtest)) {#
        Xtest <- Xtrain#
    }#
    if (nruncv == 0 & length(ncomp) > 1) #
        stop("Since length(ncomp)>1, nruncv must be >0")#
    #if (nruncv > 0) {#
     #   ncomp <- pls.lda.cv(Xtrain, Ytrain, ncomp = ncomp, nruncv = nruncv, #
      #      alpha = alpha, priors = priors)#
    #}#
    #pls.out <- pls.regression(Xtrain = Xtrain, Ytrain = transformy(Ytrain), #
        #Xtest = NULL, ncomp = ncomp)#
    pca.out <- prcomp(x = Xtrain)$x[,1:ncomp]#
    Ztrain <- as.data.frame(matrix(pca.out, ntrain, ncomp))#
    Ztrain$y <- Ytrain#
    #Ztest <- as.data.frame(scale(Xtest, center = pls.out$meanX, #
        #scale = FALSE) %*% pls.out$R)#
    Ztest <- as.data.frame(Xtest)#
    if (is.null(priors)) {#
        lda.out <- lda(formula = y ~ ., data = Ztrain)#
    }#
    else {#
        lda.out <- lda(formula = y ~ ., data = Ztrain, prior = priors)#
    }#
    predclass <- predict(object = lda.out, newdata = Ztest)$class#
    return(list(pca.out = pca.out, Ytrain = Ytrain, predclass = predclass, ncomp = ncomp))#
}
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=NULL,ncomp=2,nruncv=0)
pca.lda <- function (Xtrain, Ytrain, Xtest = NULL, ncomp, nruncv = 0, alpha = 2/3, #
    priors = NULL) #
{#
    ntrain <- nrow(Xtrain)#
    Ytrain <- as.factor(Ytrain)#
    if (is.vector(Xtest)) {#
        Xtest <- matrix(Xtest, 1, length(Xtest))#
    }#
    if (is.null(Xtest)) {#
        Xtest <- Xtrain#
    }#
    if (nruncv == 0 & length(ncomp) > 1) #
        stop("Since length(ncomp)>1, nruncv must be >0")#
    #if (nruncv > 0) {#
     #   ncomp <- pls.lda.cv(Xtrain, Ytrain, ncomp = ncomp, nruncv = nruncv, #
      #      alpha = alpha, priors = priors)#
    #}#
    #pls.out <- pls.regression(Xtrain = Xtrain, Ytrain = transformy(Ytrain), #
        #Xtest = NULL, ncomp = ncomp)#
    pca.out <- prcomp(x = Xtrain)$x[,1:ncomp]#
    Ztrain <- as.data.frame(matrix(pca.out, ntrain, ncomp))#
    Ztrain$y <- Ytrain#
    #Ztest <- as.data.frame(scale(Xtest, center = pls.out$meanX, #
        #scale = FALSE) %*% pls.out$R)#
    Ztest <- as.data.frame(Xtest)#
    if (is.null(priors)) {#
        lda.out <- lda(formula = y ~ ., data = Ztrain)#
    }#
    else {#
        lda.out <- lda(formula = y ~ ., data = Ztrain, prior = priors)#
    }#
    predclass <- predict(object = lda.out, newdata = Ztest)$class#
    return(list(pca.out = pca.out, Ztrain = Ztrain, Ztest = Ztest, Ytrain = Ytrain, predclass = predclass, ncomp = ncomp))#
}
pca.lda(Xtrain=leukemia$X[-(1:3),],Ytrain=leukemia$Y[-(1:3)],Xtest=NULL,ncomp=2,nruncv=0)
?pls.regression
?prcomp
prcomp(Xtrain)
a<-prcomp(Xtrain)
str(a)
summary(a)
loadings(a)
a$loadings
a$rotation
dim(a$rotation)
A <- a$rotation
summary(a)
A[,1]
A[,1]^2
sum(A[,1]^2)
sum(A[,2]^2)
sum(A[,5]^2)
a$sdev
a$sdev^2
L<-diag(a$sdev^2)
dim(L)
B <- A%*%solve(L)
solve(L)
a$sdev^2
(a$sdev)^2
L
cor(Xtrain)
dim(cor(Xtrain))
dim(A)
C<-cor(Xtrain)
eig<-eigen(C)
eig
(a$sdev)^2
?prcomp
x <- matrix(1:10, ncol=2)
x
centered.x <- scale(x,scale=F)
centered.x
apply(x,2,mean)
centered.scaled.x <- scale(x)
centered.scaled.x
x[,1]
x[,1]-mean(x[,1])
x[,1]-mean(x[,1])/sd(mean[,1])
x[,1]-mean(x[,1])/sd(x[,1])
(x[,1]-mean(x[,1]))/sd(x[,1])
(x[,2]-mean(x[,2]))/sd(x[,2])
?prcomp
pca <- prcomp(USArrests, scale = TRUE)
pca
USArrests
pca$rotation[,1]
hm <- as.matrix(USArrests)
hm
pca$center
pca$scale
scale(hm,center=pca$center,scale=pca$scale) %*% pca$rotation
pca$x
?pca
?prcomp
pca$rotation[,1]
pca$otation
pca$rotation
pca$rotation^2
pca$rotation[,1]^2
sum((pca$rotation[,1])^2)
sum((pca$rotation[,2])^2)
plot(pca)
?plot.pca
pca.plot
plot.prcomp
prcomp.plot
?screeplot
screeplot
?function
;
?environment
get(screeplot)
history
history()
A <- matrix(c(3,3,3,3,3,3,3,3,3),3,3)
B <- matrix(c(T,T,T,F,T,T,F,T,F),3,3)

C <- A
C
C[!B] <- NA
C
history()
library(MASS)
source("./r/pca.lda.r")#
source("./r/pca.lda.cv.r")#
source("./r/pca.lda.sample.r")#
#
#
#
load("./data/leukemia.rda")
my.train <- as.matrix(read.table("my.train.txt",h=F))
my.train <- as.matrix(read.table("./subsets/my.train.txt",h=F))
p200 <- as.matrix(read.table("./subsets/p200.txt",h=F))
# p=200#
components.p200 <- NULL#
system.time(#
for(i in 1:nrow(my.train)) {#
    components.p200[i] <- pca.lda.cv(Xtrain=lx.original[my.train[i,],p200[i,]],Ytrain=ly.original[my.train[i,]],ncomp=1:5,nruncv=ncol(my.train))$ncomp#
    cat("Complete: ",i,"\n")#
}#
)
write.table(components.p200, file="leukemia_pca_components_p200.txt",col.names=FALSE,row.names=FALSE)
components.r50 <- read.table("./components/leukemia_pca_components_r50.txt",h=F)$V1
components.r100 <- read.table("./components/leukemia_pca_components_r100.txt",h=F)$V1
components.r200 <- read.table("./components/leukemia_pca_components_r200.txt",h=F)$V1
error.rate.r50 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda(Xtrain=lx.original[my.train[i,],r50[i,]],Ytrain=ly.original[my.train[i,]],Xtest=lx.original[-(my.train)[i,],r50[i,]],ncomp=components.r50[i])$predclass#
    confussion.matrix <- table(predict,ly.original[-(my.train)[i,]])#
    error.rate.r50[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}
;
r50 <- as.matrix(read.table("./subsets/r50.txt",h=F))#
components.r50 <- read.table("./components/leukemia_pca_components_r50.txt",h=F)$V1#
#
r100 <- as.matrix(read.table("./subsets/r100.txt",h=F))#
components.r100 <- read.table("./components/leukemia_pca_components_r100.txt",h=F)$V1#
#
r200 <- as.matrix(read.table("./subsets/r200.txt",h=F))#
components.r200 <- read.table("./components/leukemia_pca_components_r200.txt",h=F)$V1
error.rate.r50 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda(Xtrain=lx.original[my.train[i,],r50[i,]],Ytrain=ly.original[my.train[i,]],Xtest=lx.original[-(my.train)[i,],r50[i,]],ncomp=components.r50[i])$predclass#
    confussion.matrix <- table(predict,ly.original[-(my.train)[i,]])#
    error.rate.r50[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}
error.rate.r50
mean(error.rate.r50)
write.table(error.rate.r50, file="leukemia_pca_errorrate_r50.txt",col.names=FALSE,row.names=FALSE)
error.rate.r100 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda.predict(Xtrain=lx.original[my.train[i,],r100[i,]],Ytrain=ly.original[my.train[i,]],Xtest=lx.original[-(my.train)[i,],r100[i,]],ncomp=components.r100[i])$predclass#
    confussion.matrix <- table(predict,ly.original[-(my.train)[i,]])#
    error.rate.r100[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}
;
error.rate.r100 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda(Xtrain=lx.original[my.train[i,],r100[i,]],Ytrain=ly.original[my.train[i,]],Xtest=lx.original[-(my.train)[i,],r100[i,]],ncomp=components.r100[i])$predclass#
    confussion.matrix <- table(predict,ly.original[-(my.train)[i,]])#
    error.rate.r100[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}
write.table(error.rate.r100, file="leukemia_pca_errorrate_r100.txt",col.names=FALSE,row.names=FALSE)
mean(error.rate.r100)
mean(error.rate.r50)
error.rate.r200 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda(Xtrain=lx.original[my.train[i,],r200[i,]],Ytrain=ly.original[my.train[i,]],Xtest=lx.original[-(my.train)[i,],r200[i,]],ncomp=components.r200[i])$predclass#
    confussion.matrix <- table(predict,ly.original[-(my.train)[i,]])#
    error.rate.r200[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}
write.table(error.rate.r200, file="leukemia_pca_errorrate_r200.txt",col.names=FALSE,row.names=FALSE)
mean(error.rate.r200)
p50 <- as.matrix(read.table("./subsets/p50.txt",h=F))#
components.p50 <- read.table("./components/leukemia_pca_components_p50.txt",h=F)$V1#
#
p100 <- as.matrix(read.table("./subsets/p100.txt",h=F))#
components.p100 <- read.table("./components/leukemia_pca_components_p100.txt",h=F)$V1#
#
p200 <- as.matrix(read.table("./subsets/p200.txt",h=F))#
components.p200 <- read.table("./components/leukemia_pca_components_p200.txt",h=F)$V1
error.rate.p50 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda(Xtrain=lx.original[my.train[i,],p50[i,]],Ytrain=ly.original[my.train[i,]],Xtest=lx.original[-(my.train)[i,],p50[i,]],ncomp=components.p50[i])$predclass#
    confussion.matrix <- table(predict,ly.original[-(my.train)[i,]])#
    error.rate.p50[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}#
write.table(error.rate.p50, file="leukemia_pca_errorrate_p50.txt",col.names=FALSE,row.names=FALSE)#
#
error.rate.p100 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda(Xtrain=lx.original[my.train[i,],p100[i,]],Ytrain=ly.original[my.train[i,]],Xtest=lx.original[-(my.train)[i,],p100[i,]],ncomp=components.p100[i])$predclass#
    confussion.matrix <- table(predict,ly.original[-(my.train)[i,]])#
    error.rate.p100[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}#
write.table(error.rate.p100, file="leukemia_pca_errorrate_p100.txt",col.names=FALSE,row.names=FALSE)#
#
error.rate.p200 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda(Xtrain=lx.original[my.train[i,],p200[i,]],Ytrain=ly.original[my.train[i,]],Xtest=lx.original[-(my.train)[i,],p200[i,]],ncomp=components.p200[i])$predclass#
    confussion.matrix <- table(predict,ly.original[-(my.train)[i,]])#
    error.rate.p200[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}#
write.table(error.rate.p200, file="leukemia_pca_errorrate_p200.txt",col.names=FALSE,row.names=FALSE)
error.rate.p200
mean(error.rate.p200)
mean(error.rate.p100)
mean(error.rate.p50)
mean(error.rate.r50)
mean(error.rate.r100)
mean(error.rate.r200)
dir()
read.table("leukemia_rasch_errorrate_p50.txt",h=F)$V1
mean(read.table("leukemia_rasch_errorrate_p50.txt",h=F)$V1)
mean(read.table("leukemia_rasch_errorrate_p100.txt",h=F)$V1)
mean(read.table("leukemia_rasch_errorrate_p200.txt",h=F)$V1)
mean(read.table("leukemia_rasch_errorrate_r50.txt",h=F)$V1)
mean(read.table("leukemia_rasch_errorrate_r100.txt",h=F)$V1)
mean(read.table("leukemia_rasch_errorrate_r200.txt",h=F)$V1)
mean(read.table("prostate_rasch_errorrate_r50.txt",h=F)$V1)
mean(read.table("prostate_rasch_errorrate_r100.txt",h=F)$V1)
mean(read.table("prostate_rasch_errorrate_r200.txt",h=F)$V1)
mean(read.table("prostate_rasch_errorrate_p50.txt",h=F)$V1)
mean(read.table("prostate_rasch_errorrate_p100.txt",h=F)$V1)
mean(read.table("prostate_rasch_errorrate_p200.txt",h=F)$V1)
source("./r/pca.lda.r")#
source("./r/pca.lda.cv.r")#
source("./r/pca.lda.sample.r")#
#
#
#
load("./data/prostate.rda")
source("./r/pca.lda.r")#
source("./r/pca.lda.cv.r")#
source("./r/pca.lda.sample.r")#
#
#
#
load("./data/prostate.rda")
my.train <- as.matrix(read.table("./subsets/my.train.txt",h=F))#
r50 <- as.matrix(read.table("./subsets/r50.txt",h=F))#
r100 <- as.matrix(read.table("./subsets/r100.txt",h=F))#
r200 <- as.matrix(read.table("./subsets/r200.txt",h=F))
# r=50#
components.r50 <- NULL#
system.time(#
for(i in 1:nrow(my.train)) {#
    components.r50[i] <- pca.lda.cv(Xtrain=prostate.x[my.train[i,],r50[i,]],Ytrain=prostate.y[my.train[i,]],ncomp=1:5,nruncv=ncol(my.train))$ncomp#
    cat("Complete: ",i,"\n")#
}#
)#
write.table(components.r50, file="prostate_pca_components_r50.txt",col.names=FALSE,row.names=FALSE)#
#
#
# r=100#
components.r100 <- NULL#
system.time(#
for(i in 1:nrow(my.train)) {#
    components.r100[i] <- pca.lda.cv(Xtrain=prostate.x[my.train[i,],r100[i,]],Ytrain=prostate.y[my.train[i,]],ncomp=1:5,nruncv=ncol(my.train))$ncomp#
    cat("Complete: ",i,"\n")#
}#
)#
write.table(components.r100, file="prostate_pca_components_r100.txt",col.names=FALSE,row.names=FALSE)#
#
#
# r=200#
components.r200 <- NULL#
system.time(#
for(i in 1:nrow(my.train)) {#
    components.r200[i] <- pca.lda.cv(Xtrain=prostate.x[my.train[i,],r200[i,]],Ytrain=prostate.y[my.train[i,]],ncomp=1:5,nruncv=ncol(my.train))$ncomp#
    cat("Complete: ",i,"\n")#
}#
)#
write.table(components.r200, file="prostate_pca_components_r200.txt",col.names=FALSE,row.names=FALSE)
my.train <- as.matrix(read.table("./subsets/my.train.txt",h=F))#
p50 <- as.matrix(read.table("./subsets/p50.txt",h=F))#
p100 <- as.matrix(read.table("./subsets/p100.txt",h=F))#
p200 <- as.matrix(read.table("./subsets/p200.txt",h=F))
# p=50#
components.p50 <- NULL#
system.time(#
for(i in 1:nrow(my.train)) {#
    components.p50[i] <- pca.lda.cv(Xtrain=prostate.x[my.train[i,],p50[i,]],Ytrain=prostate.y[my.train[i,]],ncomp=1:5,nruncv=ncol(my.train))$ncomp#
    cat("Complete: ",i,"\n")#
}#
)#
write.table(components.p50, file="prostate_pca_components_p50.txt",col.names=FALSE,row.names=FALSE)#
#
#
# p=100#
components.p100 <- NULL#
system.time(#
for(i in 1:nrow(my.train)) {#
    components.p100[i] <- pca.lda.cv(Xtrain=prostate.x[my.train[i,],p100[i,]],Ytrain=prostate.y[my.train[i,]],ncomp=1:5,nruncv=ncol(my.train))$ncomp#
    cat("Complete: ",i,"\n")#
}#
)#
write.table(components.p100, file="prostate_pca_components_p100.txt",col.names=FALSE,row.names=FALSE)#
#
#
# p=200#
components.p200 <- NULL#
system.time(#
for(i in 1:nrow(my.train)) {#
    components.p200[i] <- pca.lda.cv(Xtrain=prostate.x[my.train[i,],p200[i,]],Ytrain=prostate.y[my.train[i,]],ncomp=1:5,nruncv=ncol(my.train))$ncomp#
    cat("Complete: ",i,"\n")#
}#
)#
write.table(components.p200, file="prostate_pca_components_p200.txt",col.names=FALSE,row.names=FALSE)
my.train <- as.matrix(read.table("./subsets/my.train.txt",h=F))#
#
r50 <- as.matrix(read.table("./subsets/r50.txt",h=F))#
components.r50 <- read.table("./components/prostate_pca_components_r50.txt",h=F)$V1#
#
r100 <- as.matrix(read.table("./subsets/r100.txt",h=F))#
components.r100 <- read.table("./components/prostate_pca_components_r100.txt",h=F)$V1#
#
r200 <- as.matrix(read.table("./subsets/r200.txt",h=F))#
components.r200 <- read.table("./components/prostate_pca_components_r200.txt",h=F)$V1
error.rate.r50 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda(Xtrain=prostate.x[my.train[i,],r50[i,]],Ytrain=prostate.y[my.train[i,]],Xtest=prostate.x[-(my.train)[i,],r50[i,]],ncomp=components.r50[i])$predclass#
    confussion.matrix <- table(predict,prostate.y[-(my.train)[i,]])#
    error.rate.r50[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}#
write.table(error.rate.r50, file="prostate_pca_errorrate_r50.txt",col.names=FALSE,row.names=FALSE)#
#
error.rate.r100 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda(Xtrain=prostate.x[my.train[i,],r100[i,]],Ytrain=prostate.y[my.train[i,]],Xtest=prostate.x[-(my.train)[i,],r100[i,]],ncomp=components.r100[i])$predclass#
    confussion.matrix <- table(predict,prostate.y[-(my.train)[i,]])#
    error.rate.r100[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}#
write.table(error.rate.r100, file="prostate_pca_errorrate_r100.txt",col.names=FALSE,row.names=FALSE)#
#
error.rate.r200 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda(Xtrain=prostate.x[my.train[i,],r200[i,]],Ytrain=prostate.y[my.train[i,]],Xtest=prostate.x[-(my.train)[i,],r200[i,]],ncomp=components.r200[i])$predclass#
    confussion.matrix <- table(predict,prostate.y[-(my.train)[i,]])#
    error.rate.r200[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}#
write.table(error.rate.r200, file="prostate_pca_errorrate_r200.txt",col.names=FALSE,row.names=FALSE)
p50 <- as.matrix(read.table("./subsets/p50.txt",h=F))#
components.p50 <- read.table("./components/prostate_pca_components_p50.txt",h=F)$V1#
#
p100 <- as.matrix(read.table("./subsets/p100.txt",h=F))#
components.p100 <- read.table("./components/prostate_pca_components_p100.txt",h=F)$V1#
#
p200 <- as.matrix(read.table("./subsets/p200.txt",h=F))#
components.p200 <- read.table("./components/prostate_pca_components_p200.txt",h=F)$V1
error.rate.p50 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda(Xtrain=prostate.x[my.train[i,],p50[i,]],Ytrain=prostate.y[my.train[i,]],Xtest=prostate.x[-(my.train)[i,],p50[i,]],ncomp=components.p50[i])$predclass#
    confussion.matrix <- table(predict,prostate.y[-(my.train)[i,]])#
    error.rate.p50[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}#
write.table(error.rate.p50, file="prostate_pca_errorrate_p50.txt",col.names=FALSE,row.names=FALSE)#
#
error.rate.p100 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda(Xtrain=prostate.x[my.train[i,],p100[i,]],Ytrain=prostate.y[my.train[i,]],Xtest=prostate.x[-(my.train)[i,],p100[i,]],ncomp=components.p100[i])$predclass#
    confussion.matrix <- table(predict,prostate.y[-(my.train)[i,]])#
    error.rate.p100[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}#
write.table(error.rate.p100, file="prostate_pca_errorrate_p100.txt",col.names=FALSE,row.names=FALSE)#
#
error.rate.p200 <- NULL#
for(i in 1:nrow(my.train)) {#
    predict <- pca.lda(Xtrain=prostate.x[my.train[i,],p200[i,]],Ytrain=prostate.y[my.train[i,]],Xtest=prostate.x[-(my.train)[i,],p200[i,]],ncomp=components.p200[i])$predclass#
    confussion.matrix <- table(predict,prostate.y[-(my.train)[i,]])#
    error.rate.p200[i] <- (confussion.matrix[1,2]+confussion.matrix[2,1])/sum(confussion.matrix)#
    cat("Complete: ",i, "\n")#
}#
write.table(error.rate.p200, file="prostate_pca_errorrate_p200.txt",col.names=FALSE,row.names=FALSE)
mean(error.rate.r50)
mean(error.rate.r100)
mean(error.rate.r200)
mean(error.rate.p50)
mean(error.rate.p100)
mean(error.rate.p200)
