将年份和月份(“yyy-mm”格式)转换为日期?

将年份和月份(“yyy-mm”格式)转换为日期?

我有一个如下所示的数据集:

Month    count2009-01  122009-02  3102009-03  23792009-04  2342009-05  142009-08  12009-09  342009-10  2386

我想要绘制数据(月份为x值,计数为y值)。由于数据中存在空白,所以我希望将月份的信息转换为日期。我试过:

as.Date("2009-03", "%Y-%m")

但没有用。怎么了?看起来,As.Date()也需要一天,并且无法为一天设置一个标准值?哪个功能解决了我的问题?


达令说
浏览 2196回答 4
4回答

一只斗牛犬

您也可以使用parse_date_time或fast_strptime的函数lubridate-一揽子:>&nbsp;parse_date_time(dates1,&nbsp;"ym")[1]&nbsp;"2009-01-01&nbsp;UTC"&nbsp;"2009-02-01&nbsp;UTC"&nbsp;"2009-03-01&nbsp;UTC">&nbsp;fast_strptime(dates1,&nbsp;"%Y-%m")[1]&nbsp;"2009-01-01&nbsp;UTC"&nbsp;"2009-02-01&nbsp;UTC"&nbsp;"2009-03-01&nbsp;UTC"两者的区别在于parse_date_time允许使用lubriate样式的格式规范,同时fast_strptime要求与strptime.若要指定时区,可以使用tz-参数:>&nbsp;parse_date_time(dates1,&nbsp;"ym",&nbsp;tz&nbsp;=&nbsp;"CET")[1]&nbsp;"2009-01-01&nbsp;CET"&nbsp;"2009-02-01&nbsp;CET"&nbsp;"2009-03-01&nbsp;CET"当您的日期时间数据有异常时,可以使用truncated-规定允许有多少违规行为的参数:>&nbsp;parse_date_time(dates2,&nbsp;"ymdHMS",&nbsp;truncated&nbsp;=&nbsp;3)[1]&nbsp;"2012-06-01&nbsp;12:23:00&nbsp;UTC"&nbsp;"2012-06-01&nbsp;12:00:00&nbsp;UTC"&nbsp;"2012-06-01&nbsp;00:00:00&nbsp;UTC"使用的数据:dates1&nbsp;<-&nbsp;c("2009-01","2009-02","2009-03")dates2&nbsp;<-&nbsp;c("2012-06-01&nbsp;12:23","2012-06-01&nbsp;12",'2012-06-01")
打开App,查看更多内容
随时随地看视频慕课网APP