[Rd] as.Date nuance
Gabor Grothendieck
ggrothendieck at gmail.com
Sat Mar 24 17:12:23 CET 2007
It matches in the sense of grep or regexpr
grep("a", "ab") > 0
regexpr("a", "ab") > 0
Try this:
x <- c("2006-01-01error", "2006-01-01")
as.Date(x, "%Y-%m-%d") + ifelse(regexpr("^....-..-..$", x) > 0, 0, NA)
On 3/24/07, Vladimir Dergachev <vdergachev at rcgardis.com> wrote:
> On Saturday 24 March 2007 6:21 am, Prof Brian Ripley wrote:
> > This is how strptime() works: it processes the input to match the format.
>
> Except that the format does not match the string - there are leftover
> characters. Even by R's own definition:
>
> > match("a", "ab")
> [1] NA
>
> as, of course, is reasonable.
>
> Is there some way to make sure there is an exact match ?
>
> thank you !
>
> Vladimir Dergachev
>
> >
> > On Fri, 23 Mar 2007, Vladimir Dergachev wrote:
> > > I have encountered a nuance in as.Date() behaviour that is not
> > > altogether
> > >
> > > obvious - not sure whether this is intended or not:
> > >> as.Date("2001-01-01error")
> > >
> > > [1] "2001-01-01"
> > >
> > > I.e. it ignores the rest of the characters. This happens both in 2.3.1
> > > and 2.4.1 versions.
> >
> > It has always occurred.
> >
> > > This also happens with explicit format specification:
> > >> as.Date("2006-01-01error", format="%Y-%m-%d")
> > >
> > > [1] "2006-01-01"
> > >
> > > thank you
> > >
> > > Vladimir Dergachev
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>
More information about the R-devel
mailing list