simtimer in a little R package designed to simplify (and speeding up) calculating time intervals in discrete event simulations.
Discrete event simulations is a simulation paradigm that is based on the evaluation of events taking place in a time-specific order. Therefore a discrete event simulation calculates many time intervals. simtimer handles dates and times as integers. This makes working with time intervals as easy (and as fast) as subtracting integers.
You can install simtimer from CRAN
or
github
with:
install.packages("simtimer")
# install.packages("devtools")
::install_github("ims-fhs/simtimer") devtools
Simtimer allows transformation between datetimes (POSIXt) and
sim_datetimes (integer) with sim_datetime()
and
datetime()
.
<- as.POSIXct("2016-01-01 00:00:00", tz = "UTC")
origin_date <- as.POSIXct("2016-01-02 01:01:01", tz = "UTC")
my_datetime <- as.sim_datetime(my_datetime, origin_date)
my_simdatetime
my_simdatetime#> [1] 90061
as.datetime(my_simdatetime, origin_date)
#> [1] "2016-01-02 01:01:01 UTC"
Simtimer allows to manipulate sim_datetimes and extract parts of
sim_datetimes with sim_time()
, sim_wday()
and
sim_date()
.
sim_time(my_simdatetime)
#> [1] 3661
sim_wday(my_simdatetime, origin_date)
#> [1] "6"
sim_date(my_simdatetime)
#> [1] 1