context("Check bivariate GLM case")
require(MASS)
#Examples of "sim"
set.seed (1)
J <- 15
n <- J*(J+1)/2
group <- rep (1:J, 1:J)
mu.a <- 5
sigma.a <- 2
a <- rnorm (J, mu.a, sigma.a)
b <- -3
x <- rnorm (n, 2, 1)
sigma.y <- 6
y <- rnorm (n, a[group] + b*x, sigma.y)
u <- runif (J, 0, 3)
y123.dat <- cbind (y, x, group)
# Linear regression
x1 <- y123.dat[,2]
y1 <- y123.dat[,1]
M1 <- glm (y1 ~ x1)
cases <- data.frame(x1 = seq(-2, 2, by=0.1))
sim.results <- gelmansim(mod = M1, newdata = cases, n.sims=200, na.omit=TRUE)
test_that("returned dataframe is correct size", {
expect_that(dim(sim.results)[1], equals(length(seq(-2, 2, by=0.1))))
expect_that(dim(sim.results)[2], equals(4))
expect_that(sim.results, is_a("data.frame"))
})
test_that("values of simulations are sensible", {
expect_true(all(sim.results$yhatMin < sim.results$yhats))
expect_true(all(sim.results$yhatMax > sim.results$yhats))
expect_true(all(!is.na(sim.results$yhats)))
expect_true(all(!is.na(sim.results$yhatMin)))
expect_true(all(!is.na(sim.results$yhatMax)))
})
context("Check multivariate GLM case")
dat <- as.data.frame(y123.dat, stringsAsFactors = TRUE)
M2 <- glm(y1 ~ x1 + group, data = dat)
cases <- expand.grid(x1 = seq(-2, 2, by = 0.1),
group = seq(1, 14, by = 2))
sim.results <- gelmansim(M2, newdata=cases, n.sims=200, na.omit=TRUE)
test_that("returned dataframe is correct size", {
expect_that(dim(sim.results)[1], equals(nrow(cases)))
expect_that(dim(sim.results)[2], equals(3 + ncol(cases)))
expect_that(sim.results, is_a("data.frame"))
})
test_that("values of simulations are sensible", {
expect_true(all(sim.results$yhatMin < sim.results$yhats))
expect_true(all(sim.results$yhatMax > sim.results$yhats))
expect_true(all(!is.na(sim.results$yhats)))
expect_true(all(!is.na(sim.results$yhatMin)))
expect_true(all(!is.na(sim.results$yhatMax)))
})
context("Check multivariate GLM case with factor")
dat$group <- factor(dat$group)
M3 <- glm (y1 ~ x1 + group, data=dat)
cases <- expand.grid(x1 = seq(-2, 2, by=0.1),
group=seq(1, 14, by=2))
cases$group <- factor(cases$group)
sim.results <- gelmansim(M3, newdata=cases, n.sims=200, na.omit=TRUE)
test_that("returned dataframe is correct size", {
expect_that(dim(sim.results)[1], equals(nrow(cases)))
expect_that(dim(sim.results)[2], equals(3 + ncol(cases)))
expect_that(sim.results, is_a("data.frame"))
})
test_that("values of simulations are sensible", {
expect_true(all(sim.results$yhatMin < sim.results$yhats))
expect_true(all(sim.results$yhatMax > sim.results$yhats))
expect_true(all(!is.na(sim.results$yhats)))
expect_true(all(!is.na(sim.results$yhatMin)))
expect_true(all(!is.na(sim.results$yhatMax)))
})
context("Check multivariate LM case with factor")
dat$group <- factor(dat$group)
M4 <- lm(y1 ~ x1 + group, data=dat)
cases <- expand.grid(x1 = seq(-2, 2, by=0.1),
group=seq(1, 14, by=2))
cases$group <- factor(cases$group)
sim.results <- gelmansim(M4, newdata=cases, n.sims=200, na.omit=TRUE)
test_that("returned dataframe is correct size", {
expect_that(dim(sim.results)[1], equals(nrow(cases)))
expect_that(dim(sim.results)[2], equals(3 + ncol(cases)))
expect_that(sim.results, is_a("data.frame"))
})
test_that("values of simulations are sensible", {
expect_true(all(sim.results$yhatMin < sim.results$yhats))
expect_true(all(sim.results$yhatMax > sim.results$yhats))
expect_true(all(!is.na(sim.results$yhats)))
expect_true(all(!is.na(sim.results$yhatMin)))
expect_true(all(!is.na(sim.results$yhatMax)))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.