gpt4 book ai didi

r - 如何使用 POSIXct 类型选择日期范围

转载 作者:行者123 更新时间:2023-12-01 16:26:28 29 4
gpt4 key购买 nike

我正在开展一个项目,我想跟踪另一事件发生后九个月的出生总数(想知道是否存在相关性)。有人建议我使用“lubridate”包在我的数据框中组合月份和年份(我正在寻求这样做)。

我已在两个数据框中成功使用了 lubridate。问题是我只想从这些数据帧之一中选择某个日期范围,而我很难做到这一点。我认为这是因为数据类型是 POSIXct:

str(model.weather)
'data.frame': 467 obs. of 2 variables:
$ DATE : POSIXct, format: "2006-01-01" "2006-01-01" "2006-01-01" "2006-01-01" ...
$ EVENT_TYPE: Factor w/ 8 levels "Hail","Heavy Snow",..: 2 2 2 2 2 2 3 2 3 3 ...

我尝试转换为数字,但不幸的是,这对我的 DATE 变量中的数据造成了可怕的后果。我也尝试过转换为因子、字符和整数 - 它们似乎都不起作用。

我正在尝试使用“子集”函数来选择必要的日期范围:

model.weather <- subset(model.weather, DATE >= 2006-04-01 | DATE <= 2011-03-01)

不幸的是,这只是返回原始数据,没有进行任何过滤。

有人可以帮忙吗?

最佳答案

如果DATE仅包含日期(没有小时等,如上面的示例数据),您可以将其转换为as.Date类,然后对其进行操作

model.weather$DATE <- as.Date(model.weather$DATE)

model.weather <- subset(model.weather, DATE >= "2006-04-01" & DATE <= "2011-03-01")

或者(更好的解决方案)

model.weather <- model.weather[model.weather$DATE >= "2006-04-01" & model.weather$DATE <= "2011-03-01", ]

关于r - 如何使用 POSIXct 类型选择日期范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23450150/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com