[R-es] Tranformar falsas variables char en numéricas
Carlos Ortega
cof en qualityexcellence.es
Jue Oct 8 10:06:28 CEST 2015
Hola,
Y para cuando sepas un poco más....
#-----------------------------
unlist(lapply(d, class))
#-----------------------------
> unlist(lapply(d, class))
char fake_char fac char_fac num
"character" "character" "factor" "factor" "integer"
Saludos,
Carlos Ortega
El 8 de octubre de 2015, 10:01, Carlos Ortega <cof en qualityexcellence.es>
escribió:
> Hola,
>
> Una manera muy sencilla de hacerlo es esta:
>
> #-------------------------------
> whatcol <- 0
> for(i in 1:ncol(d)){
> whatcol[i] <-class(d[,i])
> }
> whatcol
> #--------------------------------
>
> > whatcol <- 0
> > for(i in 1:ncol(d)){
> + whatcol[i] <-class(d[,i])
> + }
> > whatcol
> [1] "character" "character" "factor" "factor" "integer"
>
> Saludos,
> Carlos Ortega
> www.qualityexcellence.es
>
>
>
> El 8 de octubre de 2015, 9:29, Christian Bravo Sánchez <
> christian.bravo.sanchez en gmail.com> escribió:
>
>> Hola usuarios de R,
>>
>> Antes de nada presentarme, soy nuevo en R (antiguo... y bueno actual
>> usuario de SAS), llevo menos de un mes y estoy intentando empezar con
>> pequeñas cosas.
>>
>> Hay un tema que me está llevando bastante tiempo y por más que investigo y
>> hago pruebas no logro saber como se hace; veréis tengo un data.frame el
>> cuál tiene bastante variables y todas ellas clasificadas como char, sin
>> embargo no todas son char sino que existen variables númericas. Dicho
>> esto,
>> lo que necesito de algún modo es recorrer todas las variables y saber cual
>> de ellas son numéricas (y por supuesto transformarlas).
>>
>> Adjunto un ejemplo reproducible:
>>
>> d <- data.frame(char = letters[1:5],
>> fake_char = as.character(1:5),
>> fac = factor(1:5),
>> char_fac = factor(letters[1:5]),
>> num = 1:5, stringsAsFactors = FALSE)
>> d
>> char fake_char fac char_fac num
>> 1 a 1 1 a 1
>> 2 b 2 2 b 2
>> 3 c 3 3 c 3
>> 4 d 4 4 d 4
>> 5 e 5 5 e 5
>> > str(d)
>> 'data.frame': 5 obs. of 5 variables:
>> $ char : chr "a" "b" "c" "d" ...
>> $ fake_char: chr "1" "2" "3" "4" ...
>> $ fac : Factor w/ 5 levels "1","2","3","4",..: 1 2 3 4 5
>> $ char_fac : Factor w/ 5 levels "a","b","c","d",..: 1 2 3 4 5
>> $ num : int 1 2 3 4 5
>>
>> Como véis la variable fake_char es numérica. Por favor tened en cuenta que
>> trabajo con muchas variables, la resolución (he aquí la dificultad para
>> mí)
>> debería recorrer todo el data.frame de manera automática.
>>
>> Muchisimas gracias de antemano.
>>
>> Saludos.
>>
>> [[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
>>
>
>
>
> --
> Saludos,
> Carlos Ortega
> www.qualityexcellence.es
>
--
Saludos,
Carlos Ortega
www.qualityexcellence.es
[[alternative HTML version deleted]]
Más información sobre la lista de distribución R-help-es