一种方法是编写自己的例程,将'st','nd','rd','th'后缀为标准函数strftime()和/或format().
编辑:这是草稿:
R> datesuffix <- function(dom) { switch(as.character(dom),
+ "1"="st", "2"="nd",
+ "3"="rd", "th") }
R> nicedate <- function(d) { dlt <- as.POSIXlt(d);
+ paste(format(dlt, "%Y %B %e"),
+ datesuffix(dlt$mday), sep="") }
R> nicedate(Sys.Date())
[1] "2011 June 9th"
R> nicedate(as.Date("2011-06-01"))
[1] "2011 June 1st"
Run Code Online (Sandbox Code Playgroud)
编辑2我想你想要重新排序日期字符串.我在北美待了太久......
R> nicedate <- function(d) { dlt <- as.POSIXlt(d);
+ paste(as.character(dlt$mday),
+ datesuffix(dlt$mday),
+ format(dlt, " %B %Y"), sep="") }
R> nicedate(as.Date("2011-06-01"))
[1] "1st June 2011"
R> nicedate(as.Date("2011-06-02"))
[1] "2nd June 2011"
R> nicedate(Sys.Date())
[1] "9th June 2011"
R>
Run Code Online (Sandbox Code Playgroud)
编辑3必须先纠正datesuffix()才能转换为char.