Hola a todos, tengo unos datos clasificados, es decir un factor con etiquetas de 1 a 14 y quiero comprobar las coincidencias con un test (también otro factor). Lo que me interesa obtener más que la matriz de confusión o el indice kappa, es otro factor con las coincidencias entre ambos factores (clasificación y test). Es decir 1 si coinciden las etiquetas y 0 si no coinciden, Supongo que para ello habrá alguna función muy básica en R, pero como soy principiante en esto la desconozco. ¿Alguien me puede ayudar? Gracias. [[alternative HTML version deleted]]
Hola Víctor. mira la función classAgreement en el paquete e1071 Saludos. El 21 de octubre de 2010 14:02, Víctor Rodríguez Galiano < luxorvrg@hotmail.com> escribió:> > Hola a todos, > > tengo unos datos clasificados, es decir un factor con etiquetas de 1 a 14 y > quiero comprobar las coincidencias con un test (también otro factor). Lo que > me interesa obtener más que la matriz de confusión o el indice kappa, es > otro factor con las coincidencias entre ambos factores (clasificación y > test). Es decir 1 si coinciden las etiquetas y 0 si no coinciden, Supongo > que para ello habrá alguna función muy básica en R, pero como soy > principiante en esto la desconozco. ¿Alguien me puede ayudar? > > > Gracias. > [[alternative HTML version deleted]] > > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >[[alternative HTML version deleted]]
Hola Javier, Gracias por tu respuesta. No es eso exactamente lo que necesito. Creo que me he explicado mal. Y tengo dos factores. El primero de ellos es los resultados de mi clasificación, que tendría la siguiente forma: [1] 12 12 1 12 1 1 1 1 1 1 1 1 12 1 12 1 1 1 1 1 1 1 1 1 1 [26] 12 1 1 1 1 1 1 12 1 12 1 1 1 1 1 12 1 12 1 12 1 1 1 12 1 [51] 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2... El otro factor es el test: [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 [26] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 [51] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 Lo que quiero obtener sería lo siguiente: [1] F F T F T T T T T T T T F T F T T T T T T T T T T [26] F T T T T T T F T F T T T T T F T F T F T T T F T [51] T T F T T T T T T T T T T T T T T T T T T T T T T T significa True, que quiere decir que las etiquetas coinciden en el test y en la clasificación F significa false que quiere decir... Pues sería eso, pero con 0 y 1: [1] 0 0 1 0 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 [26] 0 1 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 0 1 1 1 0 1 [51] 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 No se si esto te alcara un poco mi explicación anterior y se te ocurre algo. Gracias Víctor. From: javimunozlara@gmail.com Date: Thu, 21 Oct 2010 15:11:21 +0200 Subject: Re: [R-es] coincidencias entre dos factores To: luxorvrg@hotmail.com CC: r-help-es@r-project.org Hola Víctor. mira la función classAgreement en el paquete e1071 Saludos. El 21 de octubre de 2010 14:02, Víctor Rodríguez Galiano <luxorvrg@hotmail.com> escribió: Hola a todos, tengo unos datos clasificados, es decir un factor con etiquetas de 1 a 14 y quiero comprobar las coincidencias con un test (también otro factor). Lo que me interesa obtener más que la matriz de confusión o el indice kappa, es otro factor con las coincidencias entre ambos factores (clasificación y test). Es decir 1 si coinciden las etiquetas y 0 si no coinciden, Supongo que para ello habrá alguna función muy básica en R, pero como soy principiante en esto la desconozco. ¿Alguien me puede ayudar? Gracias. [[alternative HTML version deleted]] _______________________________________________ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es [[alternative HTML version deleted]]
Hola, ¿qué tal? Si tus vectores son a y b, simplemente compáralos: comparacion <- a == b Un saludo, Carlos J. Gil Bellosta http://www.datanalytics.com El día 21 de octubre de 2010 15:41, Víctor Rodríguez Galiano <luxorvrg en hotmail.com> escribió:> > Hola Javier, > > Gracias por tu respuesta. No es eso exactamente lo que necesito. Creo que me he explicado mal. > > Y tengo dos factores. El primero de ellos es los resultados de mi clasificación, que tendría la siguiente forma: > > > [1] 12 12 1 12 1 1 1 1 1 1 1 1 12 1 12 1 1 1 1 1 1 1 1 1 1 > [26] 12 1 1 1 1 1 1 12 1 12 1 1 1 1 1 12 1 12 1 12 1 1 1 12 1 > [51] 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2... > > El otro factor es el test: > > [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > [26] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > [51] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 > > Lo que quiero obtener sería lo siguiente: > > [1] F F T F T T T T T T T T F T F T T T T T T T T T T > [26] F T T T T T T F T F T T T T T F T F T F T T T F T > [51] T T F T T T T T T T T T T T T T T T T T T T T T T > > > T significa True, que quiere decir que las etiquetas coinciden en el test y en la clasificación F significa false que quiere decir... Pues sería eso, pero con 0 y 1: > > [1] 0 0 1 0 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 > [26] 0 1 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 0 1 1 1 0 1 > [51] 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > > > No se si esto te alcara un poco mi explicación anterior y se te ocurre algo. > > Gracias > > Víctor. > > > > > From: javimunozlara en gmail.com > Date: Thu, 21 Oct 2010 15:11:21 +0200 > Subject: Re: [R-es] coincidencias entre dos factores > To: luxorvrg en hotmail.com > CC: r-help-es en r-project.org > > Hola Víctor. > > > mira la función classAgreement en el paquete e1071 > > > Saludos. > > > El 21 de octubre de 2010 14:02, Víctor Rodríguez Galiano <luxorvrg en hotmail.com> escribió: > > > Hola a todos, > > tengo unos datos clasificados, es decir un factor con etiquetas de 1 a 14 y quiero comprobar las coincidencias con un test (también otro factor). Lo que me interesa obtener más que la matriz de confusión o el indice kappa, es otro factor con las coincidencias entre ambos factores (clasificación y test). Es decir 1 si coinciden las etiquetas y 0 si no coinciden, Supongo que para ello habrá alguna función muy básica en R, pero como soy principiante en esto la desconozco. ¿Alguien me puede ayudar? > > > Gracias. > [[alternative HTML version deleted]] > > > _______________________________________________ > 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]] > > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >
Si x es el vector de resultados de la clasificación y si y es el vector de test entonces, ifelse(x==y,1,0) hará lo que parece que quieres. Ejemplo: x <- rpois(25,8) y <- rpois(25,8) ifelse(x==y,1,0) HTH R. ____________________________________________________________________________________ Dr. Rubén Roa-Ureta AZTI - Tecnalia / Marine Research Unit Txatxarramendi Ugartea z/g 48395 Sukarrieta (Bizkaia) SPAIN> -----Mensaje original----- > De: r-help-es-bounces en r-project.org > [mailto:r-help-es-bounces en r-project.org] En nombre de Víctor > Rodríguez Galiano > Enviado el: jueves, 21 de octubre de 2010 15:41 > Para: r-help-es en r-project.org > Asunto: [R-es] coincidencias entre dos factores > > > Hola Javier, > > Gracias por tu respuesta. No es eso exactamente lo que > necesito. Creo que me he explicado mal. > > Y tengo dos factores. El primero de ellos es los resultados > de mi clasificación, que tendría la siguiente forma: > > > [1] 12 12 1 12 1 1 1 1 1 1 1 1 12 1 12 1 1 1 1 > 1 1 1 1 1 1 [26] 12 1 1 1 1 1 1 12 1 12 1 1 1 > 1 1 12 1 12 1 12 1 1 1 12 1 [51] 2 2 3 2 2 2 2 > 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2... > > El otro factor es el test: > > [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > 1 1 1 1 [26] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > 1 1 1 1 1 1 1 1 1 [51] 2 2 2 2 2 2 2 2 2 2 2 > 2 2 2 2 2 2 2 2 2 2 2 2 2 2 > > Lo que quiero obtener sería lo siguiente: > > [1] F F T F T T T T T T T T F T F T T T T T T > T T T T [26] F T T T T T T F T F T T T T T F > T F T F T T T F T [51] T T F T T T T T T T T > T T T T T T T T T T T T T T > > > T significa True, que quiere decir que las etiquetas > coinciden en el test y en la clasificación F significa false > que quiere decir... Pues sería eso, pero con 0 y 1: > > [1] 0 0 1 0 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 > 1 1 1 1 > [26] 0 1 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 0 1 > 1 1 0 1 > [51] 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > 1 1 1 1 1 1 > > > No se si esto te alcara un poco mi explicación anterior y se > te ocurre algo. > > Gracias > > Víctor. > > > > > From: javimunozlara en gmail.com > Date: Thu, 21 Oct 2010 15:11:21 +0200 > Subject: Re: [R-es] coincidencias entre dos factores > To: luxorvrg en hotmail.com > CC: r-help-es en r-project.org > > Hola Víctor. > > > mira la función classAgreement en el paquete e1071 > > > Saludos. > > > El 21 de octubre de 2010 14:02, Víctor Rodríguez Galiano > <luxorvrg en hotmail.com> escribió: > > > Hola a todos, > > tengo unos datos clasificados, es decir un factor con > etiquetas de 1 a 14 y quiero comprobar las coincidencias con > un test (también otro factor). Lo que me interesa obtener más > que la matriz de confusión o el indice kappa, es otro factor > con las coincidencias entre ambos factores (clasificación y > test). Es decir 1 si coinciden las etiquetas y 0 si no > coinciden, Supongo que para ello habrá alguna función muy > básica en R, pero como soy principiante en esto la > desconozco. ¿Alguien me puede ayudar? > > > Gracias. > [[alternative HTML version deleted]] > > > _______________________________________________ > 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]] > >
María Gloria Monterubbianesi
2010-Oct-21 16:32 UTC
[R-es] coincidencias entre dos factores
Hola, Y completando esta ayuda ... si quieres finalmente los "0" y "1", según se indicó si ay b son los vectores a comparar: cerosyunos<-as.numeric(a==b) Saludos Gloria ----- Original Message Follows ----- From: "Carlos J. Gil Bellosta " <cgb en datanalytics.com> To: Víctor Rodríguez Galiano <luxorvrg en hotmail.com> Cc: r-help-es en r-project.org Subject: Re: [R-es] coincidencias entre dos factores Date: Thu, 21 Oct 2010 15:44:40 +0200> Hola, ¿qué tal? > > Si tus vectores son a y b, simplemente compáralos: > > comparacion <- a == b > > Un saludo, > > Carlos J. Gil Bellosta > http://www.datanalytics.com > > > El día 21 de octubre de 2010 15:41, Víctor Rodríguez > Galiano <luxorvrg en hotmail.com> escribió: > > > > Hola Javier, > > > > Gracias por tu respuesta. No es eso exactamente lo que > necesito. Creo que me he explicado mal. > > > Y tengo dos factores. El primero de ellos es los > resultados de mi clasificación, que tendría lasiguiente> forma: > > > > > [1] 12 12 1 12 1 1 1 1 1 1 1 112 1 12 1 1 1> > 1 1 1 1 1 1 1 [26] 12 1 11 1 1 1 12 1 12> > 1 1 1 1 1 12 1 12 1 12 1 1 112 1 [51] 2 2> 3 2 2 2 2 2 2 2 2 2 22 2 2 2 2 2 2 2> 2 2 2 2... > > > El otro factor es el test: > > > > [1] 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1> > 1 1 1 1 1 1 [26] 1 1 1 1 11 1 1 1 1 1 1> > 1 1 1 1 1 1 1 1 1 1 1 1 1[51] 2 2 2 2 2> 2 2 2 2 2 2 2 2 2 2 22 2 2 2 2 2 2 2> 2 > > > Lo que quiero obtener sería lo siguiente: > > > > [1] F F T F T T T T T T T TF T F T T T T> > T T T T T T [26] F T T T TT T F T F T T> > T T T F T F T F T T T F T[51] T T F T T> T T T T T T T T T T TT T T T T T T T> T > > > > > T significa True, que quiere decir que las etiquetas > coinciden en el test y en la clasificación F significa > false que quiere decir... Pues sería eso, pero con 0 y1:> > > [1] 0 0 1 0 1 1 1 1 1 1 1 10 1 0 1 1 1 1> > 1 1 1 1 1 1 [26] 0 1 1 1 11 1 0 1 0 1 1> > 1 1 1 0 1 0 1 0 1 1 1 0 1[51] 1 1 0 1 1> 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1> 1 > > > > > No se si esto te alcara un poco mi explicaciónanterior> y se te ocurre algo. > > > Gracias > > > > Víctor. > > > > > > > > > > From: javimunozlara en gmail.com > > Date: Thu, 21 Oct 2010 15:11:21 +0200 > > Subject: Re: [R-es] coincidencias entre dos factores > > To: luxorvrg en hotmail.com > > CC: r-help-es en r-project.org > > > > Hola Víctor. > > > > > > mira la función classAgreement en el paquete e1071 > > > > > > Saludos. > > > > > > El 21 de octubre de 2010 14:02, Víctor RodríguezGaliano> <luxorvrg en hotmail.com> escribió: > > > > > Hola a todos, > > > > tengo unos datos clasificados, es decir un factor con > etiquetas de 1 a 14 y quiero comprobar las coincidencias > con un test (también otro factor). Lo que me interesa > obtener más que la matriz de confusión o el indicekappa,> es otro factor con las coincidencias entre ambos factores > (clasificación y test). Es decir 1 si coinciden las > etiquetas y 0 si no coinciden, Supongo que para ello > habrá alguna función muy básica en R, pero como soy > principiante en esto la desconozco. ¿Alguien me puede > ayudar? > > > > > Gracias. > > [[alternative HTML version deleted]] > > > > > > _______________________________________________ > > 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]] > > > > > > _______________________________________________ > > R-help-es mailing list > > R-help-es en r-project.org > > https://stat.ethz.ch/mailman/listinfo/r-help-es > > > > > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es___________________________________________________________________________ Aviso: =El contenido del presente e-mail y sus posibles adjuntos pertenecen al INTA y pueden contener información confidencial. Si usted no es el destinatario original de este mensaje y por este medio pudo acceder a dicha información, por favor solicitamos contactar al remitente y eliminar el mensaje de inmediato. Se encuentra prohibida la divulgación, copia, distribución o cualquier otro uso de la información contenida en el presente e-mail por parte de personas distintas al destinatario. This e-mail contents and its possible attachments belong to INTA and may contain confidential information. If this message was not originally addressed to you, but you have accessed to such information by this means, please contact the sender and eliminate this message immediately. Circulation, copy, distribution, or any other use of the information contained in this e-mail is not allowed on part of those different from the addressee. Antes de imprimir este mensaje, asegúrese de que sea necesario. Proteger el medio ambiente está también en su mano.
Buenas tardes Victor, Complementando las respuestas enviadas a la lista, podrias darle una mirada al operador %in%, util cuando los vectores son de _diferente_ longitud. A continuacion un ejemplo:> x <- 1:10 > x[1] 1 2 3 4 5 6 7 8 9 10> y <- seq(1, 10, by = 2) > y[1] 1 3 5 7 9> x %in% y[1] TRUE FALSE TRUE FALSE TRUE FALSE TRUE FALSE TRUE FALSE> as.numeric(x %in% y)[1] 1 0 1 0 1 0 1 0 1 0 Un saludo, Jorge Ivan Velez 2010/10/21 Víctor Rodríguez Galiano <>> > Hola Javier, > > Gracias por tu respuesta. No es eso exactamente lo que necesito. Creo que > me he explicado mal. > > Y tengo dos factores. El primero de ellos es los resultados de mi > clasificación, que tendría la siguiente forma: > > > [1] 12 12 1 12 1 1 1 1 1 1 1 1 12 1 12 1 1 1 1 1 1 1 1 1 > 1 > [26] 12 1 1 1 1 1 1 12 1 12 1 1 1 1 1 12 1 12 1 12 1 1 1 > 12 1 > [51] 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 > 2 2... > > El otro factor es el test: > > [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > [26] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > [51] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 > 2 2 > > Lo que quiero obtener sería lo siguiente: > > [1] F F T F T T T T T T T T F T F T T T T T T T T T T > [26] F T T T T T T F T F T T T T T F T F T F T T T F T > [51] T T F T T T T T T T T T T T T T T T T T T T T > T T > > > T significa True, que quiere decir que las etiquetas coinciden en el test y > en la clasificación F significa false que quiere decir... Pues sería eso, > pero con 0 y 1: > > [1] 0 0 1 0 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 > [26] 0 1 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 0 1 1 1 0 1 > [51] 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > 1 1 > > > No se si esto te alcara un poco mi explicación anterior y se te ocurre > algo. > > Gracias > > Víctor. > > > > > From: > Date: Thu, 21 Oct 2010 15:11:21 +0200 > Subject: Re: [R-es] coincidencias entre dos factores > To: > CC: > > Hola Víctor. > > > mira la función classAgreement en el paquete e1071 > > > Saludos. > > > El 21 de octubre de 2010 14:02, Víctor Rodríguez Galiano <> escribió: > > > Hola a todos, > > tengo unos datos clasificados, es decir un factor con etiquetas de 1 a 14 y > quiero comprobar las coincidencias con un test (también otro factor). Lo que > me interesa obtener más que la matriz de confusión o el indice kappa, es > otro factor con las coincidencias entre ambos factores (clasificación y > test). Es decir 1 si coinciden las etiquetas y 0 si no coinciden, Supongo > que para ello habrá alguna función muy básica en R, pero como soy > principiante en esto la desconozco. ¿Alguien me puede ayudar? > > > Gracias. > [[alternative HTML version deleted]] > > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > > > [[alternative HTML version deleted]] > > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >[[alternative HTML version deleted]]