我需要从日期开始提取两天的日期。
例如:
日期< - as.Date(01-01-2016) 年(日期)会给'2016' 月(日期)会产生'1' day(date)将返回'1'
我希望month()和day()返回'01'
标准%D或%M,似乎不适用于此处。任何建议将不胜感激!
答案 0 :(得分:2)
假设你的'date'是日期格式,format.Date()函数应该可以做到这一点:
format.Date(date, "%m")
注意:在你的问题中:
date <- as.Date(01-01-2016)
不会以日期格式返回'date'。它将返回一个错误,因为您提供给as.Date的参数被视为数字。您可能希望将日期作为字符串提供,并指定其编写的格式,如:
date <- as.Date("01-01-2016", format = "%m-%d-%Y")
format.Date(date, "%m")
如果您未指定格式,as.Date将尝试格式“%Y-%m-%d”。
答案 1 :(得分:0)
您可以使用substr(yourdate, starPosition, endPosition)
:
DATE <- 2020-09-01
12345678**9***10*
DAY2DIGITS <- substr(DATE, **9**, *10*)
DAY2DIGITS = 01