日期向量的R setdiff函数导致奇怪的结果

时间:2017-01-13 09:29:27

标签: r date vector

我试图通过以下代码获取日期之间所有工作日的向量:

days_of_month = seq(as.Date("2017-01-01"), as.Date("2017-01-31"), by="days")
sundays = c(as.Date("2017-01-01"), as.Date("2017-01-08"), as.Date("2017-01-15"), as.Date("2017-01-22"), as.Date("2017-01-29"))

当我这样做时:

working_days = setdiff(days_of_month, sundays)

setdiff的返回值是奇数值的向量:

[1] 17168 17169 17170 17171 17172 17173 17175 17176 17177 17178 17179 17180
[13] 17182 17183 17184 17185 17186 17187 17189 17190 17191 17192 17193 17194
[25] 17196 17197

这些价​​值观是什么?我如何得到days_of_month但不在sundays中的日期的载体?

1 个答案:

答案 0 :(得分:2)

这些是R S3类Date的内部数值。您可以按as.numeric(days_of_month)查看数值。或者,您可以按Date将结果转换为as.Date(working_days, origin="1970-01-01")