Compañeros, me siento superado por este problema. A ver si me podéis ayudar. No me funciona (o no entiendo) predict en objetos creados por kknn. Os pongo un ejemplo sencillo que trata de predecir un cuadrado en una nube de puntos en el plano. Muy sencillo viendo el código:
#Datos #Se trata de una nube de puntos en el plano long = 10000 x <- runif(long,1,100) y <- runif(long,1,100) datos <- data.frame(x,y) #Creamos un conjunto de datos de entrenamiento y otro de test indices <- sample(1:long,long/2) entrenamiento <- datos[indices,] test <- datos[-indices,] #Preparamos un gráfico de dispersión library(ggplot2) g <- ggplot(entrenamiento,aes(entrenamiento$x,entrenamiento$y)) + geom_point() #g #Vamos a crear las clases que nos un cuadrado C <- ifelse(entrenamiento$x>20 & entrenamiento$x<80 & entrenamiento$y>20 &entrenamiento$y<80,1,0) #Pintamos en nuestra nube de puntos ese cuadrado g + geom_point(aes(colour = C))+ opts(title="PINTAMOS UN CUADRADO") #Comenzamos a trabajar con knn #La librería será kknn library(kknn) #Voy a buscar el mejor modelo k maximo 10 y unas funciones kernel entreno.Cuadrado<-cbind(C,entrenamiento) aprox.Cuadrado <- train.kknn(C ~ x + y, data = entreno.Cuadrado, kmax = 10, kernel = c("rectangular", "triangular", "epanechnikov", "gaussian", "rank")) plot(aprox.Cuadrado) #Triangular con k=4 es el que mejor pinta tiene si pintáis los fitted.values queda de lujo test.Cuadrado<-cbind(C,test) knn.Cuadrado <- kknn(C~x+y,entreno.Cuadrado,test.Cuadrado,k=4,kernel="triangular") g + geom_point(aes(colour = predict(knn.Cuadrado,test.Cuadrado)))+ opts(title="PINTAMOS UN MOJÓN") Mi problema es que PREDICT NO FUNCIONA CON KKNN. Tengo la impresión de que me está realizando la predicción para el modelo de k=1, pero esto es una impresión mía dentro del gran número de pajas mentales que me estoy haciendo. Pensé que había alguna función predict.kknn pero por lo visto no. Me estoy comenzando a crispar y no me gusta la librería class. A ver si alguien puede arrojar un poco de luz, muchas gracias. Raúl Vaquerizo Romero www.analisisydecision.es _______________________________________________ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es