【发布时间】:2018-12-07 16:54:17
【问题描述】:
我正在尝试获取一系列日期 - 从第一个日期开始 - 通过从正态分布生成的随机数选择后续日期。目前我有通过随机数选择行号的代码,但它每次都使用相同的数字。在此示例中,它每 12 天选择一行:
set.seed(123)
library(tidyverse)
library(lubridate)
start_date <- as.Date('2018-03-01')
end_date <- as.Date('2018-07-01')
seq_dates <- seq(ymd(start_date), ymd(end_date), by='1 days')
seq_dates <- seq_dates %>%
as.tibble()
seq_dates
seq_dates %>%
filter(row_number() %% round(rnorm(n=1, mean=14, sd=3), 0) == 1)
有没有办法我可以用 dplyr 做到这一点,但每次从开始日期以随机间隔选择一行?那么从 2018-03-01 开始,下一个日期可能是 12 天后、14 天后、19 天后,等等?
【问题讨论】:
标签: r dplyr tidyverse lubridate