Stamps are just like format()
, but based on human-frendly
templates like "Recorded at 10 am, September 2002" or "Meeting, Sunday May
1, 2000, at 10:20 pm".
stamp(x, orders = lubridate_formats, locale = Sys.getlocale("LC_TIME"), quiet = FALSE) stamp_date(x, locale = Sys.getlocale("LC_TIME")) stamp_time(x, locale = Sys.getlocale("LC_TIME"))
x | a character vector of templates. |
---|---|
orders | orders are sequences of formatting characters which might be
used for disambiguation. For example "ymd hms", "aym" etc. See
|
locale | locale in which |
quiet | whether to output informative messages. |
a function to be applied on a vector of dates
stamp()
is a stamping function date-time templates mainly, though it
correctly handles all date and time formats as long as they are
unambiguous. stamp_date()
, and stamp_time()
are the specialized
stamps for dates and times (MHS). These function might be useful when the
input template is unambiguous and matches both a time and a date format.
Lubridate tries it's best to figure our the formats, but often a given
format can be interpreted in several ways. One way to deal with the
situation is to provide unambiguous formats like 22/05/81 instead of
10/05/81 if you want d/m/y format. Another option is to use a more
specialized stamp_date and stamp_time. The core function stamp()
give
priority to longer date-time formats.
Another option is to provide a vector of several values as x
parameter. Then lubridate will choose the format which fits x
the
best. Note that longer formats are preferred. If you have "22:23:00 PM" then
"HMSp" format will be given priority to shorter "HMS" order which also fits
the supplied string.
Finally, you can give desired format order directly as orders
argument.
guess_formats()
, parse_date_time()
, strptime()
#>#>#> [1] "April 04, 2010" "April 03, 2010" "April 02, 2010" "April 01, 2010" #> [5] "March 31, 2010"sf <- stamp("Created on Sunday, Jan 1, 1999 3:34 pm")#>#>sf(D)#> [1] "Created on Sunday, Apr 04, 2010 12:00 AM" #> [2] "Created on Saturday, Apr 03, 2010 12:00 AM" #> [3] "Created on Friday, Apr 02, 2010 12:00 AM" #> [4] "Created on Thursday, Apr 01, 2010 12:00 AM" #> [5] "Created on Wednesday, Mar 31, 2010 12:00 AM"stamp("Jan 01")(D)#>#>#> [1] "04 10" "04 10" "04 10" "04 10" "03 10"stamp("Sunday, May 1, 2000", locale = "C")(D)#>#>#> [1] "Sunday, Apr 04, 2010" "Saturday, Apr 03, 2010" #> [3] "Friday, Apr 02, 2010" "Thursday, Apr 01, 2010" #> [5] "Wednesday, Mar 31, 2010"stamp("Sun Aug 5")(D) #=> "Sun Aug 04" "Sat Aug 04" "Fri Aug 04" "Thu Aug 04" "Wed Aug 03"#>#>#> [1] "Sun Apr 04" "Sat Apr 03" "Fri Apr 02" "Thu Apr 01" "Wed Mar 31"stamp("12/31/99")(D) #=> "06/09/11"#>#>#> [1] "04/04/10" "04/03/10" "04/02/10" "04/01/10" "03/31/10"stamp("Sunday, May 1, 2000 22:10", locale = "C")(D)#>#>#> [1] "Sunday, Apr 04, 2010 00:00" "Saturday, Apr 03, 2010 00:00" #> [3] "Friday, Apr 02, 2010 00:00" "Thursday, Apr 01, 2010 00:00" #> [5] "Wednesday, Mar 31, 2010 00:00"stamp("2013-01-01T06:00:00Z")(D)#>#>#> [1] "2010-04-04T00:00:00Z" "2010-04-03T00:00:00Z" "2010-04-02T00:00:00Z" #> [4] "2010-04-01T00:00:00Z" "2010-03-31T00:00:00Z"stamp("2013-01-01T00:00:00-06")(D)#>#>#> [1] "2010-04-04T00:00:00+00" "2010-04-03T00:00:00+00" "2010-04-02T00:00:00+00" #> [4] "2010-04-01T00:00:00+00" "2010-03-31T00:00:00+00"#>#>#> [1] "2010-04-04T00:00:00+00:00" "2010-04-03T00:00:00+00:00" #> [3] "2010-04-02T00:00:00+00:00" "2010-04-01T00:00:00+00:00" #> [5] "2010-03-31T00:00:00+00:00"