# Load data.table
library(data.table)
data.table::setDTthreads(1)
# Read example data
DT <- fread(system.file("extdata", "DT.csv", package = "spatsoc"))
# Select only individuals A, B, C for this example
DT <- DT[ID %in% c('A', 'B', 'C')]
# Date time columns
DT[, datetime := as.POSIXct(datetime)]
DT[, yr := year(datetime)]
# Temporal grouping
group_times(DT, datetime = 'datetime', threshold = '5 minutes')
# Spatial grouping with timegroup
group_pts(DT, threshold = 5, id = 'ID', coords = c('X', 'Y'), timegroup = 'timegroup')
# Randomization: step
randStep <- randomizations(
DT,
type = 'step',
id = 'ID',
group = 'group',
datetime = 'timegroup',
splitBy = 'yr',
iterations = 2
)
# Randomization: daily
randDaily <- randomizations(
DT,
type = 'daily',
id = 'ID',
group = 'group',
datetime = 'datetime',
splitBy = 'yr',
iterations = 2
)
# Randomization: trajectory
randTraj <- randomizations(
DT,
type = 'trajectory',
id = 'ID',
group = NULL,
coords = c('X', 'Y'),
datetime = 'datetime',
splitBy = 'yr',
iterations = 2
)
Run the code above in your browser using DataLab