作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
给定一个润滑间隔,例如:
start <- "2016-09-24"
finish <- "2016-11-02"
my_interval <- lubridate::interval(start, finish)
my_interval
> my_interval
[1] 2016-09-24 UTC--2016-11-02 UTC
我希望能够提取属于这个区间的月份,在这种情况下:
[1] "Sep" "Oct" "Nov"
到目前为止,我在这方面的最佳尝试真的很笨拙:
my_months <- list(
"Aug" = interval("2016-08-01", "2016-08-31"),
"Sep" = interval("2016-09-01", "2016-09-30"),
"Oct" = interval("2016-10-01", "2016-10-31"),
"Nov" = interval("2016-11-01", "2016-11-30"),
"Dec" = interval("2016-12-01", "2016-12-31")
)
extract_months <- function(x, months) {
out <- vector(mode = "character")
for (i in seq_along(months)) {
in_month <- int_overlaps(x, months[[i]])
if (in_month) {
out[i] <- names(months)[i]
}
out <- out[!is.na(out)]
}
out
}
extract_months(x = my_interval, months = my_months)
> extract_months(x = my_interval, months = my_months)
[1] "Sep" "Oct" "Nov"
多年来,这很快变得笨拙。我希望有人有更好的解决方案。
我看不出这个问题与 Subset a dataframe between 2 dates 的重复
最佳答案
其实很简单!
library(lubridate)
month.abb[month(start):month(finish)]
如果这不起作用,请告诉我。
关于r - 提取润滑间隔内的月份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46898837/
我在使用 lubridate 时遇到问题 pretty_dates功能。在某些情况下它会失败: library(lubridate) datetimes <- structure(c(13916403
我有一个数字向量,表示自 1970 年 1 月 1 日以来的毫秒数。我想使用 lubridate 将它们转换为日期时间对象。数据示例如下: raw_times sessionInfo() R ver
解析“yyyy-MM-dd'T'HH:mm:ssX”-string (ISO 8601) 时出现非常意外的行为 > as_datetime("2017-03-22T15:48:00.000Z") [1
我是一名优秀的程序员,十分优秀!