gpt4 book ai didi

r - 如何查找日期在哪个日期范围内?

转载 作者:行者123 更新时间:2023-12-04 04:42:51 24 4
gpt4 key购买 nike

我有一个保存 id 和启动日期的数据框,对于每个数据框,我想知道每个启动日期在哪个日期范围 (Time_Seq) 中。

日期向量如下所示:

data:
ID LAUNCH_DATE
1 50314486 2004-01-01
2 55842774 2004-01-27

我有一个包含不同数据范围的时间序列数据框:
head(Time_Table):
Time_Seq DateFrom DateTo
1 726 2003-12-29 2004-01-04
2 727 2004-01-05 2004-01-11
3 728 2004-01-12 2004-01-18
4 729 2004-01-19 2004-01-25
5 730 2004-01-26 2004-02-01
6 731 2004-02-02 2004-02-08

理想情况下,我希望输出看起来像:
    ID     LAUNCH_DATE   Time_Seq
1 50314486 2004-01-01 726
2 55842774 2004-01-27 731

目前,我可以通过以下方式非常熟练地解决一个日期:
Time_Table$Time_Seq[which( (date$LAUNCH_DATE[1]>=Time_Table$DATEFROM)&(date$LAUNCH_DATE[1]<=Time_Table$DATETO) )]

任何人都可以提出一种更简单的方法而不必以这种方式循环吗?

最佳答案

cut用于将连续变量划分为类别的函数适用于日期。

data$Time_Seq <- cut(
data$LAUNCH_DATE,
c(Time_Table$DateFrom, Time_Table$DateTo[nrow(Time_Table)]),
labels = Time_Table$Time_Seq,
right = FALSE
)

关于r - 如何查找日期在哪个日期范围内?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18633042/

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