[R] dates in French format
Gabor Grothendieck
ggrothendieck at gmail.com
Thu Jan 31 06:21:35 CET 2008
Suppose we have:
dd <- c("7-déc-07", "11-déc-07", "14-déc-07", "18-déc-07", "21-déc-07",
"24-déc-07", "26-déc-07", "28-déc-07", "31-déc-07", "2-janv-08",
"4-janv-08", "7-janv-08", "9-janv-08", "11-janv-08", "14-janv-08",
"16-janv-08", "18-janv-08")
Try this (where we are assuming the just released chron 2.3-17):
library(chron)
Sys.setlocale("LC_ALL", "French")
as.chron(as.Date(dd, "%d-%b-%y"))
# or with chron 2.3-16 last line is replaced with:
chron(unclass(as.Date(dd, "%d-%b-%y")))
If those don't work (the above didn't work on my Vista system but this
is system dependent and
might work on yours) then try this alternative
> library(chron)
> library(gsubfn)
> Sys.setlocale('LC_ALL','French')
[1] "LC_COLLATE=French_France.1252;LC_CTYPE=French_France.1252;LC_MONETARY=French_France.1252;LC_NUMERIC=C;LC_TIME=French_France.1252"
> french.months <- format(seq(as.Date("2000-01-01"), length = 12, by = "month"), "%b")
> f <- function (d, m, y) chron(paste(pmatch(m, french.months), d, y, sep = "/"))
> strapply(dd, "(.*)-(.*)-(.*)", f, backref = -3, simplify = c)
[1] 12/07/07 12/11/07 12/14/07 12/18/07 12/21/07 12/24/07 12/26/07 12/28/07
[9] 12/31/07 01/02/08 01/04/08 01/07/08 01/09/08 01/11/08 01/14/08 01/16/08
[17] 01/18/08
On Jan 30, 2008 11:29 PM, Denis Chabot <chabotd at globetrotter.net> wrote:
> Hello R users,
>
> I have to import a file with one column containing dates written in
> French short format, such as:
>
> 7-déc-07
> 11-déc-07
> 14-déc-07
> 18-déc-07
> 21-déc-07
> 24-déc-07
> 26-déc-07
> 28-déc-07
> 31-déc-07
> 2-janv-08
> 4-janv-08
> 7-janv-08
> 9-janv-08
> 11-janv-08
> 14-janv-08
> 16-janv-08
> 18-janv-08
>
> There are other columns for other (numeric) variables in the data
> file. In my read.csv2 statement, I indicate that the date column must
> be imported "as.is" to keep it as character.
>
> I would like to transform this into a date object in R. So far I've
> used chron for my dates and times needs, but I am willing to change if
> another object/package will ease the task of importing these dates.
>
> My reading of the chron help led me to believe that the formats it
> understands are only month names in English.
>
> Are there other "formats" I can use with chron, or must I somehow edit
> this character variables to replace French month names by English ones
> (or numbers from 1 to 12)?
>
> Thanks in advance,
>
> Denis
> p.s. I read this in digest mode, so I'll get your replies faster if
> you cc to my email
> ______________________________________________
> R-help at r-project.org 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.
>
More information about the R-help
mailing list