Pregunta

Tengo un archivo de datos con este formato:

Weight    Industry Type  
251,787   Kellogg  h  
253,9601  Kellogg  a  
256,0758  Kellogg  h  
....

He leído los datos y tratar de dibujar un histograma con estos comandos:

 ce <- read.table("file.txt", header = TRUE)

 we = ce[,1]
 in = ce[,2]
 ty = ce[,3]

hist(we)

Pero me sale este error:

  

Error en hist.default (nos):. 'X' debe ser numérico

¿Qué necesito hacer para llamar la histogramas para mis tres variables?

¿Fue útil?

Solución

Debido al separador de miles, los datos se habrá leído como 'no numérico'. Por lo que necesita para convertirlo:

 we <- gsub(",", "", we)   # remove comma
 we <- as.numeric(we)      # turn into numbers

y ahora se puede hacer

 hist(we)

y otras operaciones numéricas.

Otros consejos

Tenga en cuenta que usted podría así trazar directamente de ce (después de la coma eliminación) utilizando el nombre de la columna:

hist(ce$Weight)

(en lugar de utilizar hist(ce[1]), lo que llevaría a la misma "debe ser numérico" error.)

Esto también funciona para un resultado de consulta de base de datos.

Utilice el diciembre argumento para "," conjunto como el punto decimal añadiendo:

 ce <- read.table("file.txt", header = TRUE, dec = ",")
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top