r - 是否有一个 R 包可以处理 POSIX 对象并返回一周的第 n 个 N 日?

我编写了一个函数,当提供日期范围、星期几的名称以及该日在给定月份(例如,每个月的第二个星期五)的出现时间时,将返回相应的日期。但是,它不是很快,我也不是 100% 相信它的稳健性。 R 中是否有一个包或一组函数可以对 POSIX 对象执行这些类型的操作?提前致谢!

最佳答案

使用 nextfri 函数,其一行源代码显示在 zoo Quick Reference vignette 中在zoo package以下给出了 d 的第二个星期五,其中 d 是该月第一天的 “日期”:

library(zoo)
d <- as.Date(c("2011-09-01", "2011-10-01"))
nextfri(d) + 7
## [1] "2011-09-09" "2011-10-14"

(nextfri 不是 zoo 包的一部分——你需要自己输入——但它只有一行)

以下给出了星期几,其中 0 是星期日,1 是星期一,依此类推。

as.POSIXlt(d)$wday
## [1] 4 6

如果你真的只处理日期而不是日期时间,那么你应该使用 "Date" 类而不是 "POSIXt" 类以避免时区错误。请参阅 R News 4/1 中的文章.

https://stackoverflow.com/questions/7558619/

相关文章:

image - 修改或添加 dicom 标签

performance - @font-face unicode-range 属性

haskell - 与 Word8 和 Int 相关的类型错误

wpf - 自动将文本框中的第一个字母大写

asp.net - Rad Ajax 加载面板未显示在 asp.net 页面的回发中

vim - 你如何在 Vim 中删除除特定模式之外的所有内容?

ruby-on-rails - Rspec测试,关于顺序和之前(:all)

django - 更改各种对象的 django-tinymce 内容 css

css - 调整 HTML map 图像的大小

opengl - 可在 OpenGL 中表示的曲线