Gracias Jorge. No entiendo bien; la variable objetivo es ya factor. El árbol me la predice bien, como factor, también. Es al ir construyendo el vector que lo anota con un nº, según de cuál de las 4 categorías se trate. Quoting Jorge I Velez <jorgeivanvelez en gmail.com>:> Estimado Manuel, > > Debes definir ecsta como factor usando, por ejemplo, > > factor(ecsta, levels = ...) > > antes de ajustar el modelo. > > Dale una mirada a > > ?factor > > para má detalles. > > Saludos, > Jorge.- > > El El lun, 18 de feb. de 2019 a las 1:03 p. m., Manuel Mendoza < > mmendoza en mncn.csic.es> escribió: > >> >> Buenas tardes, tengo un loop que hace un árbol de clasificación cada >> vez y va creando un vector con una predicción que hace. Son 4 >> categorías (pongamos a, b, c y d), pero en vez de ir añadiendo la >> categoría predicha me añade al vector el nº (del 1 al 4) al que >> corresponde esa categoría. Supongo que se puede hacer que añada la >> categoría (la letra), pero no sé cómo. >> >> preds <- {} >> >> for (i in 1:nrow(data)) { >> >> training <- data[-i, ] >> >> fitrp <- rpart(ecsta ~ .,data=training, cp=0) >> >> Pred <- predict(fitrp,data[i,], type="class") >> >> preds[i] <- Pred >> >> } >> >> Gracias como siempre, >> Manuel >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> . >> >> -- >> Dr Manuel Mendoza >> Department of Biogeography and Global Change >> National Museum of Natural Science (MNCN) >> Spanish Scientific Council (CSIC) >> C/ Serrano 115bis, 28006 MADRID >> Spain >> >> _______________________________________________ >> R-help-es mailing list >> R-help-es en r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es >> > -- > Sent from my phone. Please excuse my brevity and misspelling.-- Dr Manuel Mendoza Department of Biogeography and Global Change National Museum of Natural Science (MNCN) Spanish Scientific Council (CSIC) C/ Serrano 115bis, 28006 MADRID Spain
Estimado Manuel Mendoza Con sus datos y a modo de curiosidad, ¿que pasa en training <- data[-i, ]? Javier Rubén Marcuzzi El lun., 18 feb. 2019 a las 19:39, Manuel Mendoza (<mmendoza en mncn.csic.es>) escribió:> Gracias Jorge. No entiendo bien; la variable objetivo es ya factor. El > árbol me la predice bien, como factor, también. Es al ir construyendo > el vector que lo anota con un nº, según de cuál de las 4 categorías se > trate. > > > Quoting Jorge I Velez <jorgeivanvelez en gmail.com>: > > > Estimado Manuel, > > > > Debes definir ecsta como factor usando, por ejemplo, > > > > factor(ecsta, levels = ...) > > > > antes de ajustar el modelo. > > > > Dale una mirada a > > > > ?factor > > > > para má detalles. > > > > Saludos, > > Jorge.- > > > > El El lun, 18 de feb. de 2019 a las 1:03 p. m., Manuel Mendoza < > > mmendoza en mncn.csic.es> escribió: > > > >> > >> Buenas tardes, tengo un loop que hace un árbol de clasificación cada > >> vez y va creando un vector con una predicción que hace. Son 4 > >> categorías (pongamos a, b, c y d), pero en vez de ir añadiendo la > >> categoría predicha me añade al vector el nº (del 1 al 4) al que > >> corresponde esa categoría. Supongo que se puede hacer que añada la > >> categoría (la letra), pero no sé cómo. > >> > >> preds <- {} > >> > >> for (i in 1:nrow(data)) { > >> > >> training <- data[-i, ] > >> > >> fitrp <- rpart(ecsta ~ .,data=training, cp=0) > >> > >> Pred <- predict(fitrp,data[i,], type="class") > >> > >> preds[i] <- Pred > >> > >> } > >> > >> Gracias como siempre, > >> Manuel > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> . > >> > >> -- > >> Dr Manuel Mendoza > >> Department of Biogeography and Global Change > >> National Museum of Natural Science (MNCN) > >> Spanish Scientific Council (CSIC) > >> C/ Serrano 115bis, 28006 MADRID > >> Spain > >> > >> _______________________________________________ > >> R-help-es mailing list > >> R-help-es en r-project.org > >> https://stat.ethz.ch/mailman/listinfo/r-help-es > >> > > -- > > Sent from my phone. Please excuse my brevity and misspelling. > > > -- > Dr Manuel Mendoza > Department of Biogeography and Global Change > National Museum of Natural Science (MNCN) > Spanish Scientific Council (CSIC) > C/ Serrano 115bis, 28006 MADRID > Spain > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es >[[alternative HTML version deleted]]
Es un leave one out. Con todas las muestras menos una se entrena el algoritmo, se predice la categoría de la muestra que falta, y se añade al vector, que finalmente incluye la predicción para todas las muestras y sin que hayan sido utilizada para entrenar los modelos. Es especialmente útil cuando hay pocas muestras y con una validación cruzada k-fold, los entrenamientos se hacen con pocas muestras. Aunque es una técnica común, este código lo acabo de diseñar yo, por lo que, hasta que no analice los resultados no estoy seguro de que lo hace bien. Supongo que sí. Quoting Javier Marcuzzi <javier.ruben.marcuzzi en gmail.com>:> Estimado Manuel Mendoza > > Con sus datos y a modo de curiosidad, ¿que pasa en training <- data[-i, ]? > > Javier Rubén Marcuzzi > > El lun., 18 feb. 2019 a las 19:39, Manuel Mendoza (<mmendoza en mncn.csic.es>) > escribió: > >> Gracias Jorge. No entiendo bien; la variable objetivo es ya factor. El >> árbol me la predice bien, como factor, también. Es al ir construyendo >> el vector que lo anota con un nº, según de cuál de las 4 categorías se >> trate. >> >> >> Quoting Jorge I Velez <jorgeivanvelez en gmail.com>: >> >> > Estimado Manuel, >> > >> > Debes definir ecsta como factor usando, por ejemplo, >> > >> > factor(ecsta, levels = ...) >> > >> > antes de ajustar el modelo. >> > >> > Dale una mirada a >> > >> > ?factor >> > >> > para má detalles. >> > >> > Saludos, >> > Jorge.- >> > >> > El El lun, 18 de feb. de 2019 a las 1:03 p. m., Manuel Mendoza < >> > mmendoza en mncn.csic.es> escribió: >> > >> >> >> >> Buenas tardes, tengo un loop que hace un árbol de clasificación cada >> >> vez y va creando un vector con una predicción que hace. Son 4 >> >> categorías (pongamos a, b, c y d), pero en vez de ir añadiendo la >> >> categoría predicha me añade al vector el nº (del 1 al 4) al que >> >> corresponde esa categoría. Supongo que se puede hacer que añada la >> >> categoría (la letra), pero no sé cómo. >> >> >> >> preds <- {} >> >> >> >> for (i in 1:nrow(data)) { >> >> >> >> training <- data[-i, ] >> >> >> >> fitrp <- rpart(ecsta ~ .,data=training, cp=0) >> >> >> >> Pred <- predict(fitrp,data[i,], type="class") >> >> >> >> preds[i] <- Pred >> >> >> >> } >> >> >> >> Gracias como siempre, >> >> Manuel >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> . >> >> >> >> -- >> >> Dr Manuel Mendoza >> >> Department of Biogeography and Global Change >> >> National Museum of Natural Science (MNCN) >> >> Spanish Scientific Council (CSIC) >> >> C/ Serrano 115bis, 28006 MADRID >> >> Spain >> >> >> >> _______________________________________________ >> >> R-help-es mailing list >> >> R-help-es en r-project.org >> >> https://stat.ethz.ch/mailman/listinfo/r-help-es >> >> >> > -- >> > Sent from my phone. Please excuse my brevity and misspelling. >> >> >> -- >> Dr Manuel Mendoza >> Department of Biogeography and Global Change >> National Museum of Natural Science (MNCN) >> Spanish Scientific Council (CSIC) >> C/ Serrano 115bis, 28006 MADRID >> Spain >> >> _______________________________________________ >> R-help-es mailing list >> R-help-es en r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es >>-- Dr Manuel Mendoza Department of Biogeography and Global Change National Museum of Natural Science (MNCN) Spanish Scientific Council (CSIC) C/ Serrano 115bis, 28006 MADRID Spain
Bueno, creo que no contesté tu pregunta. Con training <- data[-i, ] crea una df llamada training, sin la muestra i, que después utiliza para entrenar el algoritmo. Quoting Javier Marcuzzi <javier.ruben.marcuzzi en gmail.com>:> Estimado Manuel Mendoza > > Con sus datos y a modo de curiosidad, ¿que pasa en training <- data[-i, ]? > > Javier Rubén Marcuzzi > > El lun., 18 feb. 2019 a las 19:39, Manuel Mendoza (<mmendoza en mncn.csic.es>) > escribió: > >> Gracias Jorge. No entiendo bien; la variable objetivo es ya factor. El >> árbol me la predice bien, como factor, también. Es al ir construyendo >> el vector que lo anota con un nº, según de cuál de las 4 categorías se >> trate. >> >> >> Quoting Jorge I Velez <jorgeivanvelez en gmail.com>: >> >> > Estimado Manuel, >> > >> > Debes definir ecsta como factor usando, por ejemplo, >> > >> > factor(ecsta, levels = ...) >> > >> > antes de ajustar el modelo. >> > >> > Dale una mirada a >> > >> > ?factor >> > >> > para má detalles. >> > >> > Saludos, >> > Jorge.- >> > >> > El El lun, 18 de feb. de 2019 a las 1:03 p. m., Manuel Mendoza < >> > mmendoza en mncn.csic.es> escribió: >> > >> >> >> >> Buenas tardes, tengo un loop que hace un árbol de clasificación cada >> >> vez y va creando un vector con una predicción que hace. Son 4 >> >> categorías (pongamos a, b, c y d), pero en vez de ir añadiendo la >> >> categoría predicha me añade al vector el nº (del 1 al 4) al que >> >> corresponde esa categoría. Supongo que se puede hacer que añada la >> >> categoría (la letra), pero no sé cómo. >> >> >> >> preds <- {} >> >> >> >> for (i in 1:nrow(data)) { >> >> >> >> training <- data[-i, ] >> >> >> >> fitrp <- rpart(ecsta ~ .,data=training, cp=0) >> >> >> >> Pred <- predict(fitrp,data[i,], type="class") >> >> >> >> preds[i] <- Pred >> >> >> >> } >> >> >> >> Gracias como siempre, >> >> Manuel >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> . >> >> >> >> -- >> >> Dr Manuel Mendoza >> >> Department of Biogeography and Global Change >> >> National Museum of Natural Science (MNCN) >> >> Spanish Scientific Council (CSIC) >> >> C/ Serrano 115bis, 28006 MADRID >> >> Spain >> >> >> >> _______________________________________________ >> >> R-help-es mailing list >> >> R-help-es en r-project.org >> >> https://stat.ethz.ch/mailman/listinfo/r-help-es >> >> >> > -- >> > Sent from my phone. Please excuse my brevity and misspelling. >> >> >> -- >> Dr Manuel Mendoza >> Department of Biogeography and Global Change >> National Museum of Natural Science (MNCN) >> Spanish Scientific Council (CSIC) >> C/ Serrano 115bis, 28006 MADRID >> Spain >> >> _______________________________________________ >> R-help-es mailing list >> R-help-es en r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es >>-- Dr Manuel Mendoza Department of Biogeography and Global Change National Museum of Natural Science (MNCN) Spanish Scientific Council (CSIC) C/ Serrano 115bis, 28006 MADRID Spain