R-数值中导入的csv文件读为字符

时间:2016-06-21 16:48:18

标签: r csv character

我在R studio中打开了一个CSV文件,我想创建一个直方图。但是所有数字都存储为“字符”。代码的PFB:

**torque=read.csv("torque.csv",header = TRUE,stringsAsFactors=FALSE)
torque <-c("torque.csv")
hist(torque,main =("Histogram of torque"))**

我收到了错误:

  

hist.default错误(扭矩,主=(“扭矩直方图”)):'x'必须是数字。**

后来我发现所有的数字都存储为“字符”。 我用的时候发现了这个 - 类(“torque.csv”) 我怎样才能解决这个问题。我使用as.numeric,但无法解决问题。请帮帮我。

数据

Enginetorq
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
52
10
0
0
0
0
0
52
52
52

2 个答案:

答案 0 :(得分:3)

这将数据读入名为torque的对象:

torque=read.csv("torque.csv",header = TRUE,stringsAsFactors=FALSE)

然后覆盖该对象,因此它现在存储一个字符串“torque.csv”,即文件名:

torque <-c("torque.csv")

为什么这样做?您现在已经丢失了R中的数据。那么......

hist(torque,main =("Histogram of torque"))

...抱怨,因为你试图对字符串“torque.csv”进行直方图。

应该如此简单:

torque=read.csv("torque.csv",header = TRUE,stringsAsFactors=FALSE)
hist(torque$Enginetorq,main ="Histogram of torque")

即读取CSV,并直方图命名列。

答案 1 :(得分:0)

您可以使用colClasses中的read.csv子功能。它是

torque=read.csv("torque.csv",header = TRUE,stringsAsFactors=FALSE, colClasses = c("Enginetorq" = "numeric"))

这是一个http://www.r-bloggers.com/using-colclasses-to-load-data-more-quickly-in-r/链接,适用于read.csv而不仅仅是read.table