[R-es] charater a numeric

javier.ruben.marcuzzi en gmail.com javier.ruben.marcuzzi en gmail.com
Mar Nov 22 20:00:56 CET 2016


Estimado Santiago Repetto

Sus datos están mal.

"#¡NULO!"   

En R es NULL, pero al importar o escribir los datos, el mismo R debería colocarlos en nulo, también usted puede colocar valores en nulo, pero creo que no es el caso.

Luego con as.numeric(datos…) debería funcionar.

Javier Rubén Marcuzzi

De: Santiago Repetto
Enviado: martes, 22 de noviembre de 2016 12:07
Para: r-help-es en r-project.org
Asunto: [R-es] charater a numeric

Hola!!
Soy novato en esto del R. Consulto por que ya estoy agotando los recursos
para resolver un problema con tutoriales, consultas que se encuentran en
google, etc. Si bien el problema parece ser simple no le encuentro la
vuelta.

Tengo un data.frame que armé importando un csv. Algunas de las columnas son
mayoritariamente compuestas por valores números pero class character ya que
al contener valores no numéricos ("#¡NULO!" por ejemplo) los importa como
character. Quiero convertirlas justamente a un vector numeric (o mejor aun
dentro del mismo data.frame que sean numeric) para poder operar con ellas
(los valores que no sean números deberían quedar como NA).

Probé con
<-as.numeric(as.character(SS))
pero me devuelve valores NA.

También probé con
SS1<- type.convert(SS, na.strings = "NA", as.is = FALSE, dec = ",",
numerals = c("allow.loss", "warn.loss", "no.loss")) y luego con as.numeric
pero me devuelve los números de ordenación de niveles del factor (creo)

Muy agradecido de antemano por cualquier sugerencia, comando o solución (o
si estoy cometiendo algún problema lógico en la propia formulación del
problema).
Este sería mas o menos el contenido de mis datos (como vector).
Saludos!
Santiago

> SS
 [1] "137155,00" "134714,00" "136184,00" "#¡NULO!"   "139683,00" "13827,00"
 [7] "139450,00" "#¡NULO!"   "134462,00" "136058,00" "132818,00" "30020,00"
[13] "29283,00"  "33885,00"  "30885,00"  "34390,00"  "#¡NULO!"   "35104,00"
[19] "32154,00"  "39554,00"  "36246,00"  "7226,00"   "40595,00"  "36674,00"
[25] "46877,00"  "45278,00"  "47273,00"  "44755,00"  "42184,00"  "38457,00"
[31] "41808,00"  "39004,00"  "#¡NULO!"   "#¡NULO!"   "#¡NULO!"   "#¡NULO!"
[37] "2351,00"   "2982,00"   "2080,00"   "2331,00"   "2562,00"   "2479,00"

> data.class(SS)
[1] "character"

> as.numeric(as.character(SS))
 [1] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
NA NA
[26] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA

	[[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]]



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