相关疑难解决方法(0)

子集两个日期之间的数据帧

我正在处理自1993年以来巴西指数(IBOV)的每日回报,我试图找出两个日期之间的子集的最佳方法.

数据框(IBOV_RET)如下:

head(IBOV_RET)
        DATE    1D_RETURN
1 1993-04-28 -0.008163265
2 1993-04-29 -0.024691358
3 1993-04-30  0.016877637
4 1993-05-03  0.000000000
5 1993-05-04  0.033195021
6 1993-05-05 -0.012048193
...
Run Code Online (Sandbox Code Playgroud)

我设置了2个变量DATE1DATE2日期

DATE1 <- as.Date("2014-04-01")
DATE2 <- as.Date("2014-05-05")
Run Code Online (Sandbox Code Playgroud)

我能够使用以下代码创建一个新的子集:

TEST <- IBOV_RET[IBOV_RET$DATE >= DATE1 & IBOV_RET$DATE <= DATE2,]
Run Code Online (Sandbox Code Playgroud)

它工作,但我想知道是否有更好的方法来分配2日期之间的数据,也许使用subset.

r date subset

30
推荐指数
2
解决办法
6万
查看次数

根据 R 中的条件删除特定日期之后的行

我见过类似的问题,但它们都没有将其应用于 data.table 或 data.frame 的特定行,而是将其应用于整个矩阵。
在 2 个日期之间对数据框进行子集
如何从 R 中的数据框中选择具有特定日期的一些行

我有一个数据集,其中包含被诊断为 OA 的患者和未诊断为 OA 的患者:

 dt <- data.table(ID = seq(1,10,1), OA = c(1,0,0,1,0,0,0,1,1,0), 
             oa.date = as.Date(c("01/01/2006", "01/01/2001", "01/01/2001", "02/03/2005","01/01/2001","01/01/2001","01/01/2001","05/06/2010", "01/01/2011", "01/01/2001"), "%d/%m/%Y"),
             stop.date = as.Date(c("01/01/2006", "31/12/2007", "31/12/2008", "02/03/2005", "31/12/2011", "31/12/2011", "31/12/2011", "05/06/2010", "01/01/2011", "31/12/2011"), "%d/%m/%Y"))
dt$oa.date[dt$OA==0] <- NA

> dt
    ID OA    oa.date  stop.date
 1:  1  1 2006-01-01 2006-01-01
 2:  2  0       <NA> 2007-12-31
 3:  3  0       <NA> 2008-12-31
 4:  4  1 2005-03-02 2005-03-02
 5:  5  0       <NA> 2011-12-31 …
Run Code Online (Sandbox Code Playgroud)

r date conditional-statements

0
推荐指数
1
解决办法
7424
查看次数

标签 统计

date ×2

r ×2

conditional-statements ×1

subset ×1