我正在处理自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个变量DATE1和DATE2日期
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.
我有一个大型数据集,我想特别挑选一些行,我想知道是否有人可以帮我这个?非常感谢你的帮助!!
例如,如果我只想挑选2/1/2008-5/1/2008加上9/1/2008-11/1/2008的行,我该怎么做?非常感谢你!!
有人可以帮忙吗?
date mpressure mxtemp
2008-01-01 1025.3 15.7
2008-01-02 1025.6 16.0 <
2008-01-03 1023.6 18.1 <
2008-01-04 1021.8 18.4 <
2008-01-05 1020.1 20.9 <
2008-01-06 1019.7 20.7
2008-01-07 1018.4 24.0
2008-01-08 1016.7 23.7
2008-01-09 1015.3 24.5 <
2008-01-10 1014.3 21.8 <
2008-01-11 1012.9 23.4 <
Run Code Online (Sandbox Code Playgroud)
然后我会得到这样的东西?
date mpressure mxtemp
2008-01-02 1025.6 16.0 <
2008-01-03 1023.6 18.1 <
2008-01-04 1021.8 18.4 <
2008-01-05 1020.1 20.9 <
2008-01-09 1015.3 24.5 <
2008-01-10 1014.3 21.8 <
2008-01-11 1012.9 23.4 <
Run Code Online (Sandbox Code Playgroud)