У меня есть следующий фрагмент моего набора данных:
extract[989:993, ]
# A tibble: 5 x 2
Dates `Rating agency`
<dttm> <chr>
1 2014-07-11 NA
2 2014-07-14 NA
3 2014-07-15 DBRS
4 2014-07-16 NA
5 2014-07-17 NA
Я хотел бы выбрать интервалы [-1:1], которые соответствуют дню до и дню после понижения. В строке, где в столбце «Рейтинговое агентство» стоит не «Н/Д», это указывает на то, что произошло понижение рейтинга. В моем примере выше, строки [990:992].
В моем наборе данных 45276 записей с 536 понижениями (столбец «Рейтинговое агентство» не «NA»), где я хотел бы создать список, содержащий 3 строки, в которых понижение находится между ними, как это для всего моего набора данных:
extract[990:992, ]
# A tibble: 3 x 2
Dates `Rating agency`
<dttm> <chr>
1 2014-07-14 NA
2 2014-07-15 DBRS
3 2014-07-16 NA
Я попробовал это с помощью этой команды:
interval1 <- basisanddowngradessingledates[`Rating agency` != "NA", c(-1:1), ]
Что привело к этой ошибке:
Error in x[j] : only 0's may be mixed with negative subscripts
Что я делаю не так?