Gracias Carlos J., sale bien, pero me transforma las 6 categorías en números del 1 al 6 ¿sabes cómo evitarlo? Quoting "Carlos J. Gil Bellosta" <cgb en datanalytics.com>:> apply(data, 1, function(x) which.max(table(x))) > > El sáb., 14 abr. 2018 a las 19:54, Manuel Mendoza (<mmendoza en mncn.csic.es>) > escribió: > >> >> Buenas tardes de sábado. LLevo más de una hora intentando una cosa que >> debe ser una chorrada; a ver si alguien puede ayudarme. >> >> Tengo una matriz (data) de 1000 muestras (filas) y 6 categorías >> posibles. Hay 100 columnas, es decir, 100 votos para cada muestra, y >> necesito crear un vector con la categoría más votada de las 6. >> >> which.max(table(data[i,])) me da la más votada de la muestra i. >> Estoy intentando crear el vector con un for y de momento no me sale. >> ¡ya! es muy fácil, pero no me sale, y estoy seguro de que hay una >> forma mucho más fácil. >> >> Gracias, >> Manuel >> -- >> Dr Manuel Mendoza >> Department of Biogeography and Global Change >> National Museum of Natural History (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 History (MNCN) Spanish Scientific Council (CSIC) C/ Serrano 115bis, 28006 MADRID Spain
Probaría con apply(data, 1, function(x) names(table(x))[which.max(table(x))]) No sé si he contado los paréntesis bien. El sáb., 14 abr. 2018 a las 20:33, Manuel Mendoza (<mmendoza en mncn.csic.es>) escribió:> > Gracias Carlos J., sale bien, pero me transforma las 6 categorías en > números del 1 al 6 > ¿sabes cómo evitarlo? > > > Quoting "Carlos J. Gil Bellosta" <cgb en datanalytics.com>: > > > apply(data, 1, function(x) which.max(table(x))) > > > > El sáb., 14 abr. 2018 a las 19:54, Manuel Mendoza (< > mmendoza en mncn.csic.es>) > > escribió: > > > >> > >> Buenas tardes de sábado. LLevo más de una hora intentando una cosa que > >> debe ser una chorrada; a ver si alguien puede ayudarme. > >> > >> Tengo una matriz (data) de 1000 muestras (filas) y 6 categorías > >> posibles. Hay 100 columnas, es decir, 100 votos para cada muestra, y > >> necesito crear un vector con la categoría más votada de las 6. > >> > >> which.max(table(data[i,])) me da la más votada de la muestra i. > >> Estoy intentando crear el vector con un for y de momento no me sale. > >> ¡ya! es muy fácil, pero no me sale, y estoy seguro de que hay una > >> forma mucho más fácil. > >> > >> Gracias, > >> Manuel > >> -- > >> Dr Manuel Mendoza > >> Department of Biogeography and Global Change > >> National Museum of Natural History (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 History (MNCN) > Spanish Scientific Council (CSIC) > C/ Serrano 115bis, 28006 MADRID > Spain > >[[alternative HTML version deleted]]
Funciona, gracias una vez más, Manuel Quoting "Carlos J. Gil Bellosta" <cgb en datanalytics.com>:> Probaría con > > apply(data, 1, function(x) names(table(x))[which.max(table(x))]) > > No sé si he contado los paréntesis bien. > > El sáb., 14 abr. 2018 a las 20:33, Manuel Mendoza (<mmendoza en mncn.csic.es>) > escribió: > >> >> Gracias Carlos J., sale bien, pero me transforma las 6 categorías en >> números del 1 al 6 >> ¿sabes cómo evitarlo? >> >> >> Quoting "Carlos J. Gil Bellosta" <cgb en datanalytics.com>: >> >> > apply(data, 1, function(x) which.max(table(x))) >> > >> > El sáb., 14 abr. 2018 a las 19:54, Manuel Mendoza (< >> mmendoza en mncn.csic.es>) >> > escribió: >> > >> >> >> >> Buenas tardes de sábado. LLevo más de una hora intentando una cosa que >> >> debe ser una chorrada; a ver si alguien puede ayudarme. >> >> >> >> Tengo una matriz (data) de 1000 muestras (filas) y 6 categorías >> >> posibles. Hay 100 columnas, es decir, 100 votos para cada muestra, y >> >> necesito crear un vector con la categoría más votada de las 6. >> >> >> >> which.max(table(data[i,])) me da la más votada de la muestra i. >> >> Estoy intentando crear el vector con un for y de momento no me sale. >> >> ¡ya! es muy fácil, pero no me sale, y estoy seguro de que hay una >> >> forma mucho más fácil. >> >> >> >> Gracias, >> >> Manuel >> >> -- >> >> Dr Manuel Mendoza >> >> Department of Biogeography and Global Change >> >> National Museum of Natural History (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 History (MNCN) >> Spanish Scientific Council (CSIC) >> C/ Serrano 115bis, 28006 MADRID >> Spain >> >>-- Dr Manuel Mendoza Department of Biogeography and Global Change National Museum of Natural History (MNCN) Spanish Scientific Council (CSIC) C/ Serrano 115bis, 28006 MADRID Spain