On Wed, 2010-12-08 at 11:26 +0100, Joris Meys wrote:> Dear,
>
> According to the documentation, the parameters given in "dates"
are
> passed to the function "chron". When trying this out, it turns
out
> that this apparently doesn't happen, eg:
>
> > dates("20100101",format="Ymd",out.format="day
mon year")
> [1] 01/01/10
> > chron("20100101",format="Ymd",out.format="day
mon year")
> [1] 01 Jan 2010
It does actually. If you read the code and/or debug `dates` to see what
is happening, `out.format` is passed on to `chron` which does its thing
and passes back the correctly formatted object as specified by
`out.format`.
However, `dates` then goes on to unclass the returned object and then
stick back on a class. It also tries to preserve the "format" in the
first line of `dates`
fmt <- attr(x, "format")
but in your example this is NULL as `x` is just a character. The code
reapplies this stored format later on with
attr(out, "format") <- fmt
as the last line before returning out.
The "format" attribute of the object returned by `chron` never gets
stored or used on the object returned form `dates`.
G
> I would expect the outcome of both functions to be the same, or am I
> overlooking something?
>
> Kind regards
> Joris
>
--
%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%
Dr. Gavin Simpson [t] +44 (0)20 7679 0522
ECRC, UCL Geography, [f] +44 (0)20 7679 0565
Pearson Building, [e] gavin.simpsonATNOSPAMucl.ac.uk
Gower Street, London [w] http://www.ucl.ac.uk/~ucfagls/
UK. WC1E 6BT. [w] http://www.freshwaters.org.uk
%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%