Автоматически создавать последовательности дат с разными датами начала в R - PullRequest
2 голосов
/ 30 января 2012

Я могу создать нужные последовательности дат, используя следующий код:

DateTwoWeeks1 <- seq(as.Date("2010/8/6"), as.Date("2011/8/5"), by = "2 weeks")
DateTwoWeeks2 <- seq(as.Date("2010/8/7"), as.Date("2011/8/5"), by = "2 weeks")
DateTwoWeeks3 <- seq(as.Date("2010/8/8"), as.Date("2011/8/5"), by = "2 weeks")

Однако я хотел бы автоматизировать создание последовательностей дат для 14 различных дат начала.Мне бы хотелось, чтобы один временной ряд начинался 6 августа 2010 года, а следующий - 7 августа, и так далее до 19 августа 2010 года.

Как я могу автоматизировать это?Я попробовал его с помощью функции «вставить», но я не смог заставить работать следующий код:

for (i in 6:19){
TimeTwoWeeks[i] <- seq(as.Date(paste("2010/8/", i)), as.Date("2011/8/5"), by = "2 weeks")
}

Любая прямая помощь или ссылки на другие сайты / посты приветствуются.

Ответы [ 2 ]

5 голосов
/ 30 января 2012

Вот, пожалуйста:

TimeTwoWeeks <- lapply(as.Date("2010/8/6") + 0:13, 
                       function(X) seq(X, as.Date("2011/8/5"), by = "2 weeks"))
1 голос
/ 30 января 2012

Если вы хотите создать список временных рядов, вы можете настроить его следующим образом:

TimeTwoWeeks <- list()

for (i in 6:19){
TimeTwoWeeks[[i-5]] <- seq(as.Date(paste("2010/8/", i)), as.Date("2011/8/5"), by = "2 weeks")
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...