## ----setup, include = FALSE---------------------------------------------------
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>"
)

library(sensorLeak)

## -----------------------------------------------------------------------------
data(sensor_data)

head(sensor_data)

## -----------------------------------------------------------------------------
audit <- sensor_audit(
  sensor_data,
  time = "timestamp",
  sensor = "sensor_id",
  split = "split",
  lat = "latitude",
  lon = "longitude"
)

## -----------------------------------------------------------------------------
audit

## -----------------------------------------------------------------------------
summary(audit)

## -----------------------------------------------------------------------------
check_temporal_leakage(
  sensor_data,
  time = "timestamp",
  split = "split"
)

## -----------------------------------------------------------------------------
check_sensor_leakage(
  sensor_data,
  sensor = "sensor_id",
  split = "split"
)

## -----------------------------------------------------------------------------
check_spatial_leakage(
  sensor_data,
  lat = "latitude",
  lon = "longitude",
  split = "split",
  threshold = 1
)

## -----------------------------------------------------------------------------
window_data <- data.frame(
  sensor_id = c("S1", "S1"),
  window_start = as.POSIXct(c(
    "2026-01-01 10:00:00",
    "2026-01-01 13:00:00"
  )),
  window_end = as.POSIXct(c(
    "2026-01-01 14:00:00",
    "2026-01-01 18:00:00"
  )),
  split = c("train", "test")
)

check_window_leakage(
  window_data,
  start = "window_start",
  end = "window_end",
  split = "split",
  sensor = "sensor_id"
)

