[R] Problem with data type recognition and conversion
Petr Pikal
petr.pikal at precheza.cz
Wed Nov 1 08:56:47 CET 2006
Hi
On 31 Oct 2006 at 22:42, tom soyer wrote:
Date sent: Tue, 31 Oct 2006 22:42:40 -0600
From: "tom soyer" <tom.soyer at gmail.com>
To: r-help <r-help at stat.math.ethz.ch>
Subject: [R] Problem with data type recognition and conversion
> Hi,
>
> I have a CSV file with two columns; the first column is date, second
> column is numbers. I used read.csv() to load the file into the
> variable temp. Somehow, R could not recognize my numbers as double.
> Instead, it thinks these numbers are integer even though they all have
> decimal points (isn't that strange?). The problem I ran into is that
> if I tried to convert the numbers to double using as.double, R doesn't
> give me the original value; e.g. 9.92 becomes 805 (see below).
>
> > temp[1,2]
> [1] 9.92
> 812 Levels: . 10.00 10.01 10.02 10.03 10.04 10.05 10.06 10.07
> 10.08 10.09 10.10 10.11 10.12 ... 9.99 > typeof(temp[1,2]) [1]
> "integer" > as.double(temp[1,2]) [1] 805
Levels always tell you it is a factor. Your csv file has an extra
decimal point or something odd that forces R to convert second column
to factor. You can transfer factor variable to numeric one by
as.numeric(as.character(temp[,2]))
however I recommend you to go through your csv file (if it is not too
big) and find the problematic item.
>
> If I leave the numbers as integer, then I can't do arithmetic
> operations on them. Does anyone know what's going on?
see ?factor
HTH
Petr
>
> Thanks,
>
> Tom
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html and provide commented,
> minimal, self-contained, reproducible code.
Petr Pikal
petr.pikal at precheza.cz
More information about the R-help
mailing list