Fisher Score (FSCORE) is a supervised linear feature extraction method. For each feature/variable, it computes Fisher score, a ratio of between-class variance to within-class variance. The algorithm selects variables with largest Fisher scores and returns an indicator projection matrix.
do.fscore(X, label, ndim = 2, preprocess = c("null", "center", "scale",
"cscale", "decorrelate", "whiten"))
an
a length-
an integer-valued target dimension.
an additional option for preprocessing the data.
Default is "null". See also aux.preprocess
for more details.
a named list containing
an
a length-
a list containing information for out-of-sample prediction.
a
fisher_use_1936Rdimtools
# NOT RUN {
## generate data of 3 types with clear difference
dt1 = aux.gensamples(n=33)-100
dt2 = aux.gensamples(n=33)
dt3 = aux.gensamples(n=33)+100
## merge the data and create a label correspondingly
X = rbind(dt1,dt2,dt3)
label = c(rep(1,33), rep(2,33), rep(3,33))
## compare Fisher score with LDA
out1 = do.lda(X, label)
out2 = do.fscore(X, label)
## visualize
par(mfrow=c(1,2))
plot(out1$Y[,1], out1$Y[,2], main="LDA")
plot(out2$Y[,1], out2$Y[,2], main="Fisher Score")
# }
# NOT RUN {
# }
Run the code above in your browser using DataLab