从R中的日期中删除年份

Nan*_*ncy 16 r date

我有20年的天气数据,但我只对每年的模式感兴趣.例如,我不关心1995年6月与2011年6月的不同之处.相反,我希望6月1日有20个值,6月2日有20个值,等等.

我的问题:如何删除日期对象的年份部分,保持月份和日期,同时还保持日期的顺序属性?我的最终目标是每个结果变量对应的重复mm/dd值的长列表.我将对待mm/dd之类的因素,但顺序正确.

# Given this:
as.Date(c("2014-06-01","1993-06-01", "2013-06-03", "1999-01-31"), "%Y-%m-%d")
# I want to get this:
"06-01" "06-01" "06-03" "01-31"
# That will sort like this
"01-31" "06-01" "06-01" "06-03"
Run Code Online (Sandbox Code Playgroud)

像使用sub()来删除年份并将短划线转换为小数的小黑客不起作用,因为那个月的第1个月与该月的第10个相同.我还尝试将日期转换为字符串,删除年份,然后将其重新设置为日期......这就是2014年的所有内容.

jal*_*pic 21

这有用吗?

temp<-as.Date(c("2014-06-01","1993-06-01", "2013-06-03", "1999-01-31"), "%Y-%m-%d")

x<-format(temp, format="%m-%d")

 x
[1] "06-01" "06-01" "06-03" "01-31"


sort(x)
[1] "01-31" "06-01" "06-01" "06-03"
Run Code Online (Sandbox Code Playgroud)

  • 它们似乎不再是`date`对象,使用`as.Date`似乎不起作用.有任何想法吗? (3认同)