eric
2017-Aug-02 17:16 UTC
[R-es] problema al transformar columna tipo "factor" a tipo "numeric" en data.table
Se ha borrado un adjunto en formato HTML... URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20170802/366301a6/attachment.html>
Carlos Ortega
2017-Aug-02 17:49 UTC
[R-es] problema al transformar columna tipo "factor" a tipo "numeric" en data.table
Hola, Hacerlo dentro de data.table tampoco es que te ofrezca muchas ventajas... datos$coltipofactor <- as.factor(datos$coltipofactor) Saludos, Carlos Ortega www.qualityexcellence.es El 2 de agosto de 2017, 19:16, eric <ericconchamunoz en gmail.com> escribió:> Estimada comunidad, quiero pedirles ayuda con un problema que parece > simple, pero que no se como resolver. Resulta que quiero transformar una > columna tipo "factor" a tipo "numeric" en un data.table, pero al hacerlo > asi: > > datos[, coltipofactor:=as.numeric(coltipofactor)] > > toma los datos de "coltipofactor" y los cambia de manera consecutiva a los > que estaban en la columna. Me explico, "coltipofactor" contiene numeros del > 1 al 12, que representan meses. Cuando transformo la columna a numerica el > 1 se transforma en 13, el 2 en 14 el 3 en 15 y asi ... > > Que estoy haciendo mal ? como se hace bien ? o no se puede hacer ? > > Ya me habia pasado esto antes, y lo resolvi de forma manual, pero ahora > son muchos datos y seguro que hay una forma correcta de hacerlo. > > Muchas gracias, > > Eric. > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es >-- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]]
Fernando Macedo
2017-Aug-03 00:42 UTC
[R-es] problema al transformar columna tipo "factor" a tipo "numeric" en data.table
Creo que el problema es que cuando lo pasas directamente a numeric el toma los niveles para transformarlos. Los factores tienen sus niveles con sus etiquetas, digamos, que es lo que vemos nosotros. Por ejemplo machos y hembras puede ser lo que vemos mientras que internamente los niveles son 1 y 2. Si fuera ese el problema yo lo resuelvo transformando primero en character y luego a numeric. Quedaría así: datos$coltipofactor = as.numeric(as.character(datos$coltipofactor)) Prueba así a ver si era eso. -- Fernando Macedo El 02/08/17 a las 14:49, Carlos Ortega escribió:> Hola, > > Hacerlo dentro de data.table tampoco es que te ofrezca muchas ventajas... > > datos$coltipofactor <- as.factor(datos$coltipofactor) > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > > El 2 de agosto de 2017, 19:16, eric <ericconchamunoz en gmail.com> escribió: > >> Estimada comunidad, quiero pedirles ayuda con un problema que parece >> simple, pero que no se como resolver. Resulta que quiero transformar una >> columna tipo "factor" a tipo "numeric" en un data.table, pero al hacerlo >> asi: >> >> datos[, coltipofactor:=as.numeric(coltipofactor)] >> >> toma los datos de "coltipofactor" y los cambia de manera consecutiva a los >> que estaban en la columna. Me explico, "coltipofactor" contiene numeros del >> 1 al 12, que representan meses. Cuando transformo la columna a numerica el >> 1 se transforma en 13, el 2 en 14 el 3 en 15 y asi ... >> >> Que estoy haciendo mal ? como se hace bien ? o no se puede hacer ? >> >> Ya me habia pasado esto antes, y lo resolvi de forma manual, pero ahora >> son muchos datos y seguro que hay una forma correcta de hacerlo. >> >> Muchas gracias, >> >> Eric. >> >> _______________________________________________ >> R-help-es mailing list >> R-help-es en r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es >> > >
Apparently Analagous Threads
- problema al transformar columna tipo "factor" a tipo "numeric" en data.table
- transformar una variable de tipo carácter
- Transformar factor a numérico.
- Transformar muchas variables factor en variables binarias de acuerdo a niveles
- Transformar muchas variables factor en variables binarias de acuerdo a niveles