[R] CSV file and date. Dates are read as factors!
Don MacQueen
macq at llnl.gov
Thu Jul 28 16:25:29 CEST 2005
It's really pretty simple.
First, if you supply as.is=TRUE to read.csv() [or read.table()] then
your dates will be read as character strings, not factors. That saves
the step of converting them from factor to character.
Then, use as.Date() to convert the date columns to objects of class
"Date". You will have to specify the format, if your dates are not in
the default format.
> tmp <- as.Date('2002-5-1')
> as.Date(Sys.time())-tmp
Time difference of 1184 days
If your dates include times, then use as.POSIXct() instead of as.Date().
> tmp <- as.POSIXct('2002-5-1 13:21')
> Sys.time()-tmp
Time difference of 1183.746 days
If you don't want to use as.is, perhaps because you have other
columns that you *want* to have as factors, then either supply
colClasses to read.csv, or else just use format() to convert the
factors to character.
as.Date(format(your_date_column))
As an aside, you might save yourself some time by using read.xls()
from the gdata package.
And of course, there's always the ugly work-around. In your Excel,
create new columns in which the dates are formatted as numbers,
presumably as the number of days since whatever Excel uses for its
origin. Then, in R, you can simply subtract the numbers. If you have
date-time values in Excel, this might be a little trickier.
-Don
At 9:28 PM -0400 7/27/05, John Sorkin wrote:
>I am using read.csv to read a CSV file (produced by saving an Excel file
>as a CSV file). The columns containing dates are being read as factors.
>Because of this, I can not compute follow-up time, i.e.
>Followup<-postDate-preDate. I would appreciate any suggestion that would
>help me read the dates as dates and thus allow me to calculate follow-up
>time.
>Thanks
>John
>
>John Sorkin M.D., Ph.D.
>Chief, Biostatistics and Informatics
>Baltimore VA Medical Center GRECC and
>University of Maryland School of Medicine Claude Pepper OAIC
>
>University of Maryland School of Medicine
>Division of Gerontology
>Baltimore VA Medical Center
>10 North Greene Street
>GRECC (BT/18/GR)
>Baltimore, MD 21201-1524
>
>410-605-7119
>-- NOTE NEW EMAIL ADDRESS:
>jsorkin at grecc.umaryland.edu
>
>______________________________________________
>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
--
--------------------------------------
Don MacQueen
Environmental Protection Department
Lawrence Livermore National Laboratory
Livermore, CA, USA
More information about the R-help
mailing list