[R] date

Eric Berger er|cjberger @end|ng |rom gm@||@com
Thu Dec 19 13:45:41 CET 2019


[ ... taking the bait regarding the "unnecessary discussion" ... ]

The "Fortune nomination" that Bert sent includes the phrase

"...then it is best to tell R ..."

What metric is being used to do the ranking to get the "best"? If the
metric is related to "providing the most unambiguous information to R"
then I agree that providing the structure explicitly is best.
However, often what is "best" is to minimize programmer time. With
lubridate, I know that providing the clue 'ymd' is enough to have it
perform the date conversion correctly. That is minimal effort on my part,
which gives it a top ranking from my point of view.

Also, to broaden this "unnecessary discussion" I would argue that the
lubridate package may even be more "in the spirit of R" than what is being
proposed with the explicit structural information. Clearly R is far from
being a strongly typed language. If you really want to provide explicit
structural information maybe you would be better off with a language such
as C++. :-)





On Thu, Dec 19, 2019 at 2:30 PM Bert Gunter <bgunter.4567 using gmail.com> wrote:

>
>
> "But the important point is:
> If you know the structure of the data you want to
> parse, then it is best to tell R (or any other language)
> this structure explicitly. "
>
> Fortune nomination!
>
> -- Bert
>
>
>
>
>
>
> Thu, Dec 19, 2019, 2:49 AM Enrico Schumann <es using enricoschumann.net> wrote:
>
>>
>> Quoting Eric Berger <ericjberger using gmail.com>:
>>
>> > Martin  writes: "there's really no reason for going beyond base R"
>> >
>> > I disagree. Lubridate is a fantastic package. I use it all the time. It
>> > makes working with dates really easy, as evidenced by John Kane's
>> > suggestion. I strongly recommend learning to work with it.
>> >
>> > The bottom line: as is often the case, there are many different ways to
>> > accomplish a task in R.
>>
>> I apologise beforehand if this sparks an unnecessary discussion ;-)
>>
>> But the important point is:
>> If you know the structure of the data you want to
>> parse, then it is best to tell R (or any other language)
>> this structure explicitly.
>>
>>
>> > On Thu, Dec 19, 2019 at 10:31 AM Martin Maechler <
>> maechler using stat.math.ethz.ch>
>> > wrote:
>> >
>> >> >>>>> John Kane
>> >> >>>>>     on Tue, 17 Dec 2019 20:28:17 -0500 writes:
>> >>
>> >>     > library(lubridate)
>> >>     > gs$dat1  <-  mdy(gs$date)
>> >>
>> >> there's really no reason for going beyond base R.
>> >>
>> >> Using the proper format as per Patrick and Peter's advice
>> >> (below) is perfectly clear and actually
>> >> more robust (for the next data set etc)
>> >> than going via "good guessing" in extra packages.
>> >>
>> >>     > On Tue, 17 Dec 2019 at 18:38, peter dalgaard <pdalgd using gmail.com>
>> >> wrote:
>> >>     >>
>> >>     >> ...and switch the order, and use %y for 2-digit years.
>> >>     >>
>> >>     >> > On 17 Dec 2019, at 23:57 , Patrick (Malone Quantitative) <
>> >> malone using malonequantitative.com> wrote:
>> >>     >> >
>> >>     >> > Try putting / instead of - in your format, to match the data.
>> >>     >> >
>> >>     >> > On Tue, Dec 17, 2019 at 5:52 PM Val <valkremk using gmail.com>
>> wrote:
>> >>     >> >>
>> >>     >> >> Hi All,
>> >>     >> >>
>> >>     >> >> I wanted to to convert character date  mm/dd/yy  to
>> YYYY-mm-dd
>> >>     >> >> The sample data and my attempt is shown below
>> >>     >> >>
>> >>     >> >> gs <-read.table(text="ID date
>> >>     >> >> A1   09/27/03
>> >>     >> >> A2   05/27/16
>> >>     >> >> A3   01/25/13
>> >>     >> >> A4   09/27/19",header=TRUE,stringsAsFactors=F)
>> >>     >> >>
>> >>     >> >> Desired output
>> >>     >> >>  ID     date      d1
>> >>     >> >> A1 09/27/03 2003-09-27
>> >>     >> >> A2 05/27/16 2016-05-27
>> >>     >> >> A3 01/25/13 2012-04-25
>> >>     >> >> A4 09/27/19 2019-09-27
>> >>     >> >>
>> >>     >> >> I used this
>> >>     >> >> gs$d1 = as.Date(as.character(gs$date), format = "%Y-%m-%d")
>> >>     >> >>
>> >>     >> >> but I got NA's.
>> >>     >> >>
>> >>     >> >> How do I get my desired result?
>> >>     >> >> Thank you.
>> >>     >> >>
>> >>     >>
>> >>     >> --
>> >>     >> Peter Dalgaard, Professor,
>> >>     >> Center for Statistics, Copenhagen Business School
>> >>     >> Solbjerg Plads 3, 2000 Frederiksberg, Denmark
>> >>     >> Phone: (+45)38153501
>> >>     >> Office: A 4.23
>> >>     >> Email: pd.mes using cbs.dk  Priv: PDalgd using gmail.com
>> >>     >>
>> >>
>> >>     > --
>> >>     > John Kane
>> >>     > Kingston ON Canada
>>
>>
>>
>> --
>> Enrico Schumann
>> Lucerne, Switzerland
>> http://enricoschumann.net
>>
>> ______________________________________________
>> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
>> 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.
>>
>>

	[[alternative HTML version deleted]]



More information about the R-help mailing list