[R-es] Determinación del punto de corte óptimo

Fernando Sanchez fernandsanche en yahoo.es
Mie Feb 10 12:25:22 CET 2016


 Hola a todos, 
Hace unos días había formulado esta consulta. Os envío este correo para deciros que dado que mi caso sólo implica tres categorías, he logrado determinar los puntos y algunas cosas más como el índice de Youden gracias a la librería. DiagTest3Grp.
Aprovecho para agradeceros nuevamente a todos por vuestras respuestas y en especial a Pedro Concejero que me proporcionó documentación que me sirvió de orientación.
saludos,
Fernando

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Hola Pedro,Muchas gracias por tu respuesta. En mi caso, las trescategorías están ordenadas. ¿Alguna otra idea de qué se podría hacer? Conozcolas curvas ROC y algo de su análisis (sé la existencia de metodologías paraoptimizar puntos de corte en dos categorías). Lo que yo había hecho para micaso era seleccionar dos puntos de corte aleatorios y repetir la operación unmillón de veces (esto desde luego que es un método muy patatero):datos<-read.table("datos_grupos.txt",header=T)# creo variable donde meteré resultadosresultados_obtenidos<-c(0,0,0)for (i in 1:1000000) {# creo de forma aleatoria los dos puntos de corte y losasigno a las ZXsminimo<-min(datos$ZX)maximo<-max(datos$ZX)puntos_de_corte<-runif(2, min =minimo , max = maximo )corte_moderado<-min(puntos_de_corte)corte_grave<-max(puntos_de_corte)# creo una variable categórica a partir de la variableZXsZX_recodificada<-cut(datos$ZX,c(minimo-0.1,corte_moderado,corte_grave,maximo+0.1),labels=c("leve","moderado","grave"))# calculo el porcentaje que clasifica bientabla_resultados<-table(ZX_recodificada,datos$Severity)aciertos<-(tabla_resultados[1,1]+tabla_resultados[2,2]+tabla_resultados[3,3])/nrow(datos)# guardo los resultados y luego se repite el procesoresultados<-cbind(corte_moderado,corte_grave,aciertos)resultados_obtenidos<-rbind(resultados_obtenidos,resultados)}Por cierto, muchas gracias por el link a los ficheros detu tesis, me han parecido muy claros e intereresantes.saludos,Fernando        De: Pedro Concejero Cerezo <pedro.concejerocerezo en telefonica.com> Para: r-help-es en r-project.org; Ferna
 de 2016 11:17 Asunto: Re:Determinación del punto de corte óptimo (Fernando Sanchez)    Hola, Fernando, El tema de optimización de puntos de corte es un clásicodel diagnóstico (enfermo / no enfermo), objetivo que es directamente aplicablea cualquier otro criterio dicotómico, con sólo dos valores. En tu caso, en elque tienes 3, me pregunto si son estrictamente diferentes (p ej 3 tipos dealgo) o tienen alguna ordenación. Pero en cualquier caso puedes plantear 3diagnósticos: A contra (A,B), A contra (A,C), B contra (A,C). (Expresado unpoco patatero, la verdad). Si hubiese una graduación, por ejemplo gravedad,desde nada grave hasta muy grave, a lo mejor se puede proponer algo mássofisticado. Un método que se ha convertido en un estándar tanto paraelegir puntos de corte óptimo como para comparar modelos es la curva ROC. Peropara objetivos binarios (aunque hay evoluciones hacia varios tipos, no te puedorecomendar nada concreto). Hay montones de tutoriales y por supuesto libreríasR para hacer este tipo de análisis (ROCR y pROC), pero se suele obviar algo queen diagnóstico es esencial para determinar el punto de corte en una prueba(esto es básico en pruebas de detección rápida o screening): la tasa base o"prevalencia".  Aun a fuer de resultar un pedante, me gustaría recomendardos partes de mi tesis doctoral:en http://concejero.wdfiles.com/local--files/tesis/04-comparacion%20curvas%20ROC.pdf   (apartado 4.2.5) sobre tasa de prevalencia y  http://concejero.wdfiles.com/local--files/tesis/05-medidas%20de%20eficacia.pdf (apartado 5.4) con un ejemplo clásico sobre detección de VIH (la base sobre laque se elaboró la prueba ELISA) Lo malo es que en aquel tiempo (2004) yo no conocía R asíque no encontrarás ahí nada sobre cómo aplicarlo en un contexto R. Estoy enello, aunque por si te resulta útil hay una charla didáctica en el grupo Rmadrid del 27 febrero de 2014 (http://madrid.r-es.org/page/3/),con código y de hecho la charla está grabada, usando un ejemplo del detecc.cáncer de próstata con PSA (un marcador que se obtiene con una simple prueba desangre). Perdón por el rollo, se nota que me gusta el tema, ¿no?Si alguna de estas cosas te valen y necesitas ayuda dímelo. Saludos!Pedro  El 26/01/2016 a las 21:59, mailto:r-help-es-request en r-project.orgescribió: Determinación del punto de corte óptimo (FernandoSanchez)  --Pedro ConcejeroE-mail: mailto:pedro.concejerocerezo en telefonica.comskype: pedro.concejerotwitter @ConcejeroPedrolinkedin pedroconcejeroEntusiasta R, me encontraréis aquí gRupo R madRid  Este mensaje y sus adjuntos se dirigen exclusivamente asu destinatario, puede contener información privilegiada o confidencial y espara uso exclusivo de la persona o entidad de destino. Si no es usted. eldestinatario indicado, queda notificado de que la lectura, utilización,divulgación y/o copia sin autorización puede estar prohibida en virtud de lalegislación vigente. Si ha recibido este mensaje por error, le rogamos que noslo comunique inmediatamente por esta misma vía y proceda a su destrucción. The information contained in this transmission isprivileged and confidential information intended only for the use of theindividual or entity named above. If the reader of this message is not theintended recipient, you are hereby notified that any dissemination,distribution or copying of this communication is strictly prohibited. If youhave received this transmission in error, do not read it. Please immediatelyreply to the sender that you have received this communication in error and thendelete it. Esta mensagem e seus anexos se dirigem exclusivamente aoseu destinatário, pode conter informação privilegiada ou confidencial e é parauso exclusivo da pessoa ou entidade de destino. Se não é vossa senhoria odestinatário indicado, fica notificado de que a leitura, utilização, divulgaçãoe/ou cópia sem autorização pode estar proibida em virtude da legislaçãovigente. Se recebeu esta mensagem por erro, rogamos-lhe que nos o comuniqueimediatamente por esta mesma via e proceda a sua destruição                    [[alternativeHTML version deleted]] _______________________________________________R-help-es mailing listR-help-es en r-project.orghttps://stat.ethz.ch/mailman/listinfo/r-help-es
	[[alternative HTML version deleted]]



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