R as.Date()将年份和周数转换为日期

时间:2018-04-18 15:23:13

标签: r

我在使用R中的as.Date()函数转换包含第53周的年份+月份字符串时遇到了麻烦。

该代码适用于第52周的顶部示例,但对于第53周的底部示例返回NA。

@Component
class YourDAO {

    @Autowired
    private String mySqlFromXml;

}

1 个答案:

答案 0 :(得分:1)

NA获得了b <- "2017531",因为您正在尝试引用不存在的日期。

这与您格式化日期的方式以及日历的启动方式有关。

%W指的是数字00-53

%u指的是星期一1-7星期一是1

b <- "2017531"
as.Date(b, '%Y%W%u')
# [1] NA

第53周第1天将参考第53周的星期一。但是,2017年第53周发生的一周中唯一的一天是星期天。

c <- "2017537"
as.Date(a, '%Y%W%u')
# [1] "2017-12-31"

您可以通过查看第52周的星期六来进一步确认:

d <- "2017526"
as.Date(a, '%Y%W%u')
# [1] "2017-12-30"