【发布时间】:2016-10-18 05:30:42
【问题描述】:
我有一个数据框 (df),如下所示:
derv market date
-10.7803563 S&P 500 Index 2008-01-02
-15.6922552 S&P 500 Index 2008-01-03
-15.7648483 S&P 500 Index 2008-01-04
-10.2294744 S&P 500 Index 2008-01-07
-0.5918593 S&P 500 Index 2008-01-08
8.1518987 S&P 500 Index 2008-01-09
.....
84.1518987 S&P 500 Index 2014-12-31
我想在 df 中找到特定日期之前的 10 个交易日。例如,2008-01-12。
我曾想过像下面这样使用 dplyr:
df %>% select(derv,Market,date) %>%
filter(date > 2008-01-12 - 10 & Date <2008-01-12)
但我遇到的问题是如何索引特定日期前的 10 个交易日。我上面的代码不起作用,我不知道在使用 dplyr 的情况下如何处理。
另一个令人担忧的问题是特定日期(例如 2008-01-12)可能在 df 中,也可能不在 df 中。如果具体在df,我想我只需要回溯9天就可以了;但它不在 df 中,我需要返回 10 个索引。我不确定我在这里是否正确,但这是让我感到困惑的部分。
非常感谢任何见解。
【问题讨论】: