This collection of S3 methods 'resolve' messy dates into a single date according to some explicit bias, such as returning the minimum or maximum date, the mean, median, or modal date, or a random date from among the possible resolutions for each messy date. If the date is not 'messy' (i.e. has no annotations) then just that precise date is returned. This can be useful for various descriptive or inferential projects.
Examples
d <- as_messydate(c("2008-03-25", "?2012-02-27", "2001-01?", "2001~",
"2001-01-01..2001-02-02", "{2001-01-01,2001-02-02}",
"{2001-01,2001-02-02}", "2008-XX-31", "-0050-01-01"))
d
#> 'mdate' chr [1:9] "2008-03-25" "?2012-02-27" "2001-01?" "~2001" ...
vmin(d)
#> 'mdate' chr [1:9] "2008-03-25" "2012-02-27" "2001-01-01" "2001-01-01" ...
min(d)
#> 'mdate' chr "-0050-01-01"
vmax(d)
#> 'mdate' chr [1:9] "2008-03-25" "2012-02-27" "2001-01-31" "2001-12-31" ...
max(d)
#> 'mdate' chr "2012-02-27"