# NOT RUN {
data(iris) # conjunto de dados
data <- iris[,1:4]
# Exemplo 1 - Sem as classes nos dados
Ind <- PP_Index(data = data, class = NA, vector.proj = NA,
findex = "moment", dimproj = 2, weight = TRUE,
lambda = 0.1, r = 1)
print("Numero de classes:"); Ind$num.class
print("Nomes das classes:"); Ind$class.names
print("Funcao indice de projecao:"); Ind$findex
print("Vetores de projecao:"); Ind$vector.proj
print("Indice de projecao:"); Ind$index
# Exemplo 2 - Com as classes nos dados
class <- iris[,5] # classe dos dados
Fcindex <- "pda" # funcao indice
sphere <- TRUE # Dados esfericos
Res <- PP_Optimizer(data = data, class = class, findex = Fcindex,
optmethod = "SA", dimproj = 2, sphere = sphere,
weight = TRUE, lambda = 0.1, r = 1, cooling = 0.9,
eps = 1e-3, maxiter = 1000, half = 30)
# Comparando o resultado obtido
if (match(toupper(Fcindex),c("LDA", "PDA", "LR"), nomatch = 0) > 0) {
if (sphere) {
data <- apply(predict(prcomp(data)), 2, scale) # dados esfericos
}
} else data <- as.matrix(Res$proj.data[,1:Dim])
Ind <- PP_Index(data = data, class = class, vector.proj = Res$vector.opt,
findex = Fcindex, dimproj = 2, weight = TRUE, lambda = 0.1,
r = 1)
print("Numero de classes:"); Ind$num.class
print("Nomes das classes:"); Ind$class.names
print("Funcao indice de projecao:"); Ind$findex
print("Vetores de projecao:"); Ind$vector.proj
print("Indice de projecao:"); Ind$index
print("Indice de projecao otimizado:"); Res$index[length(Res$index)]
# }
Run the code above in your browser using DataLab