Я бы хотел (а) рассчитывать еженедельные отчисления ежедневно (используя условное соглашение). Исходные данные выглядит следующим образом (экстракт):Рассчитать еженедельную доходность от ежедневных цен В R
...
4003 1985-05-06 200.764
4004 1985-05-07 202.502
4005 1985-05-08 202.683
4006 1985-05-09 204.642
4007 1985-05-10 206.051
4008 1985-05-13 207.702
4009 1985-05-14 207.630
4010 1985-05-15 207.585
4011 1985-05-16 207.843
4012 1985-05-17 209.723
4013 1985-05-20 212.843
...
Для расчета недельные доходности, я хочу, чтобы извлечь данные каждую среду. Если одна неделя не включает среду, я хочу выделить следующий рабочий день.
Для извлечения данных из сред, я использовал следующий код:
wednesday = as.POSIXlt(time(data))$wday == 3
indx <- c(0, which(wednesday))
datanew<-period.apply(data, INDEX=indx, FUN=last)
Но с этим кодом, данные сред, очевидно, не извлекается, если нет данных в среду на этой неделе, то есть есть праздник в среду.
Может ли кто-нибудь помочь?
Один из способов обойти это - проверить, какие среды отсутствуют в наборе данных, а затем заменить их данными следующего дня. Тогда вы можете применить свой код без проблем. –
Извините, что это не ответ, но вы можете найти пакет lubridate для работы с датами и временем в R help: https://cran.r-project.org/web/packages/lubridate/vignettes/lubridate.html –