[R-es] Identificar las muestras que son iguales a la seleccionada en un loop

Manuel Mendoza mmendoz@ @end|ng |rom |u|br|ghtm@||@org
Mar Ago 17 20:07:07 CEST 2021


Buenos tardes, tengo una df, datarem, resultado de un remuestreo de data,
que lógicamente tiene muestras repetidas muchas veces. Para hacer un
leave-one-out, cada vez que quito una muestra tengo que quitar también las
que son iguales a ella. Se me ocurrió hacer lo de abajo, pero no funciona
porque "duplicated" no hace lo que yo creía y no sé cómo identificar las
muestras que son iguales a la seleccionada (datarem[i, ]), aunque creo que
es sencillo.
Lo de después de aplicar rpart tampoco está bien, porque la muestra sobre
la que predigo no es la misma que había quitado. Cualquier sugerencia al
respecto también me vendría bien.

preds <- c(0)  # creamos un vector vacío

for (i in 1:nrow(data)) {
  index <- which(duplicated(data.rem[i, ]))
  training <-  training  [-i, ]
  training <-  datarem[-index, ]
  fitrp <- rpart(loc ~ .,data=training)
  Pred <- predict(fitrp,data[i,], type="class")
  preds[i] <- as.character(Pred)
}
data$preds<- preds

Muchas gracias, como siempre.
Manuel

	[[alternative HTML version deleted]]



Más información sobre la lista de distribución R-help-es