如何围绕虚拟变量创建事件 window?

How can I create an event window around a dummy variable?

我的面板数据集看起来像这样 table,没有变量“New”。现在我正在尝试创建如下所示的变量“New”:

Symbol  Date        Close       Event     Event1  Event1_date  New
AAPL    09/03/2020  66,542503   14/03/2020  NA    NA           NA
AAPL    10/03/2020  71,334999   14/03/2020  NA    NA           -4
AAPL    11/03/2020  68,857498   14/03/2020  NA    NA           -3
AAPL    12/03/2020  62,057499   14/03/2020  NA    NA           -2
AAPL    13/03/2020  69,4925     14/03/2020  NA    NA           -1
AAPL    16/03/2020  60,552502   14/03/2020  1     16/03/2020    0
AAPL    17/03/2020  63,215      14/03/2020  NA    NA            1
AAPL    18/03/2020  61,6675     14/03/2020  NA    NA            2
AAPL    19/03/2020  61,195      14/03/2020  NA    NA            3
AAPL    20/03/2020  57,310001   14/03/2020  NA    NA            4
AAPL    23/03/2020  56,092499   14/03/2020  NA    NA           NA
VISA    05/03/2020  186,960007  12/03/2020  NA    NA           NA
VISA    06/03/2020  184,360001  12/03/2020  NA    NA           -4
VISA    09/03/2020  171,130005  12/03/2020  NA    NA           -3
VISA    10/03/2020  182,600006  12/03/2020  NA    NA           -2
VISA    11/03/2020  172,949997  12/03/2020  NA    NA           -1
VISA    12/03/2020  160,080002  12/03/2020  1     12/03/2020    0
VISA    13/03/2020  175,830002  12/03/2020  NA    NA            1
VISA    16/03/2020  152,009995  12/03/2020  NA    NA            2
VISA    17/03/2020  157,889999  12/03/2020  NA    NA            3
VISA    18/03/2020  148,479996  12/03/2020  NA    NA            4
VISA    19/03/2020  152,25      12/03/2020  NA    NA           NA
VISA    20/03/2020  146,830002  12/03/2020  NA    NA           NA

但我真的不知道如何让这个新变量起作用。我已经尝试了我发现的另一个代码:

Kurse_Gesamt$New <- head(filter(c(rep(0, 4), Kurse_Gesamt$Event1, rep(0, 4)), 
                                   filter=-4:4)[-(4:4)], -4)

但我收到错误消息:

Error in UseMethod("filter") : no applicable method for 'filter' applied to an object of class "c('double', 'numeric')"

你能帮我创建变量吗?

非常感谢!

这是创建 New 变量的一种方法 -

library(dplyr)

Kurse_Gesamt <- Kurse_Gesamt %>%
  group_by(Symbol) %>%
  mutate(New = row_number() - match(1, Event1),  
         New = ifelse(abs(New) > 4, NA, New)) %>%
  ungroup
Kurse_Gesamt
#   Symbol       Date      Close      Event Event1 Event1_date New
#1    AAPL 09/03/2020  66,542503 14/03/2020     NA        <NA>  NA
#2    AAPL 10/03/2020  71,334999 14/03/2020     NA        <NA>  -4
#3    AAPL 11/03/2020  68,857498 14/03/2020     NA        <NA>  -3
#4    AAPL 12/03/2020  62,057499 14/03/2020     NA        <NA>  -2
#5    AAPL 13/03/2020    69,4925 14/03/2020     NA        <NA>  -1
#6    AAPL 16/03/2020  60,552502 14/03/2020      1  16/03/2020   0
#7    AAPL 17/03/2020     63,215 14/03/2020     NA        <NA>   1
#8    AAPL 18/03/2020    61,6675 14/03/2020     NA        <NA>   2
#9    AAPL 19/03/2020     61,195 14/03/2020     NA        <NA>   3
#10   AAPL 20/03/2020  57,310001 14/03/2020     NA        <NA>   4
#11   AAPL 23/03/2020  56,092499 14/03/2020     NA        <NA>  NA
#12   VISA 05/03/2020 186,960007 12/03/2020     NA        <NA>  NA
#13   VISA 06/03/2020 184,360001 12/03/2020     NA        <NA>  -4
#14   VISA 09/03/2020 171,130005 12/03/2020     NA        <NA>  -3
#15   VISA 10/03/2020 182,600006 12/03/2020     NA        <NA>  -2
#16   VISA 11/03/2020 172,949997 12/03/2020     NA        <NA>  -1
#17   VISA 12/03/2020 160,080002 12/03/2020      1  12/03/2020   0
#18   VISA 13/03/2020 175,830002 12/03/2020     NA        <NA>   1
#19   VISA 16/03/2020 152,009995 12/03/2020     NA        <NA>   2
#20   VISA 17/03/2020 157,889999 12/03/2020     NA        <NA>   3
#21   VISA 18/03/2020 148,479996 12/03/2020     NA        <NA>   4
#22   VISA 19/03/2020     152,25 12/03/2020     NA        <NA>  NA
#23   VISA 20/03/2020 146,830002 12/03/2020     NA        <NA>  NA