Nothing
library(GGIR)
context("MXLX")
test_that("MXLX is able to identify correct mean and timing of MX and LX", {
Y = rep(1, 1440)
# An M5 at 1:00 with M5 == 2
Y[61:360] = 2
# An L5 at 12:00 with L5 == 0
Y[721:1020] = 0
# A second 'M5' at 18:00 with M5 == 1.5 which we expect to find when only
# the second half of the data is passed on
Y[1081:1380] = 1.5
# Add some missing values as code should be able to handle this
is.na(Y[20:30]) = TRUE
# Full 24 hours
out1 = MXLX(Y = Y, X = 5, epochSize = 60, tseg = c(0, 24), resolutionMin = 10)
expect_false(all(is.na(out1)))
expect_equal(out1$L5hr, 12)
expect_equal(out1$L5, 0)
expect_equal(out1$start_L5, 721)
expect_equal(out1$end_L5, 1020)
expect_equal(out1$M5hr, 1)
expect_equal(out1$M5, 2)
expect_equal(out1$start_M5, 61)
expect_equal(out1$end_M5, 360)
# When selecting only the first 12 hours we still expect to find M5 at 1:00
out3 = MXLX(Y = Y, X = 5, epochSize = 60, tseg = c(0, 12), resolutionMin = 10)
expect_equal(nrow(out3), 1)
expect_equal(out3$M5hr, 1)
expect_equal(out3$M5, 2)
expect_equal(out3$start_M5, 61)
expect_equal(out3$end_M5, 360)
# and L5 is now the first 5 hour block after M5
expect_equal(out3$L5hr, 6.3333, tolerance = 0.001)
expect_equal(out3$L5, 1)
expect_equal(out3$start_L5, 381)
expect_equal(out3$end_L5, 680)
# When only passing on the second 12 hours (note: Y is trimmed now)
# we expect same L5 as 24 hours because L5 occurs in second half of the day
# only differences are:
# - indices are shifted to reflect new Y time series
# - M5 is different because M5 occurs in first half of the day
out4 = MXLX(Y = Y[721:1440], X = 5, epochSize = 60, tseg = c(12, 24), resolutionMin = 10)
expect_equal(nrow(out4), 1)
expect_equal(out4$L5hr, out1$L5hr)
expect_equal(out4$L5, out1$L5)
expect_equal(out4$start_L5, out1$start_L5 - 720)
expect_equal(out4$end_L5, out1$end_L5 - 720)
expect_equal(out4$M5hr, 18)
expect_equal(out4$M5, 1.5)
expect_equal(out4$start_M5, 361)
expect_equal(out4$end_M5, 660)
# When recording is short
Y = 1
out = MXLX(Y = Y, X = 5, epochSize = 60, tseg = c(0, 24), resolutionMin = 10)
expect_equal(nrow(out), 1)
expect_true(all(is.na(out)))
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.