Nothing
library(testthat)
library(metaBMA)
set.seed(123)
test_that("Gronau (2017): power pose analysis (reported) are correct ", {
data(power_pose, package = "metaBMA")
tmp <- capture_output(eval(power_pose))
expect_silent(
priorEStesting <- prior(
family = "t",
param = c(location = 0, scale = 1 / sqrt(2), nu = 1),
lower = 0, label = "d"
)
)
expect_silent(
priorESestimation <- prior(
family = "t",
param = c(location = 0, scale = 1 / sqrt(2), nu = 1),
label = "d"
)
)
expect_silent(
priorTau <- prior("invgamma", c(1, .15), label = "tau")
)
skip_on_cran()
suppressWarnings( # divergent transitions
m_testing <- meta_bma(
y = effectSize, SE = SE, d = priorEStesting, data = power_pose,
tau = priorTau, iter = 10, logml_iter = 2000, rel.tol = .1, summ = "stan"
)
)
bf_reported <- c("d_10_fixed" = 89.570, "d_10_random" = 9.374)
expect_equal(unname(unlist(m_testing$BF)[c(2, 12)]),
unname(bf_reported),
tolerance = .0001
)
expect_equal(m_testing$inclusion$incl.BF, 33.136, tolerance = .001)
m_estimation <- meta_bma(
y = effectSize, SE = SE, data = power_pose, d = priorESestimation,
tau = priorTau, iter = 2000, rel.tol = .1,
logml_iter = 10, summarize = "int"
)
expect_equal(m_estimation$estimates["averaged", c(4, 6:7)],
c("50%" = 0.22, "hpd95_lower" = 0.09, "hpd95_upper" = 0.34),
tolerance = .03
)
})
test_that("Gronau (2017): power pose analysis with informed t prior ", {
skip_on_cran()
data(power_pose, package = "metaBMA")
tmp <- capture_output(eval(power_pose))
priorEStesting <- prior(
family = "t",
param = c(location = 0.34999, scale = 0.1021, nu = 3),
lower = 0, label = "d"
)
priorESestimation <- prior(
family = "t",
param = c(location = 0.34999, scale = 0.1021, nu = 3),
label = "d"
)
priorTau <- prior("invgamma", c(1, .15), label = "tau")
# conduct analyses
suppressWarnings(m_testing <- meta_bma(
y = effectSize, SE = SE, d = priorEStesting,
data = power_pose, tau = priorTau, iter = 10
))
bf_reported <- c("d_10_fixed" = 191.751, "d_10_random" = 20.689)
expect_equal(unname(unlist(m_testing$BF)[c(2, 12)]), unname(bf_reported), tolerance = .00001)
expect_equal(m_testing$inclusion$incl.BF, 71.373, tolerance = .001)
m_estimation <- meta_bma(
y = effectSize, SE = SE, data = power_pose, d = priorESestimation,
tau = priorTau, iter = 1000, summ = "int"
)
expect_equal(m_estimation$estimates["averaged", c(4, 6:7)],
c("50%" = 0.26, "hpd95_lower" = 0.14, "hpd95_upper" = 0.37),
tolerance = .01
)
})
test_that("Gronau (2017): power pose analysis (only unfamiliar with default prior)", {
skip_on_cran()
# data(power_pose_unfamiliar, package = "metaBMA")
tmp <- capture_output(eval(power_pose_unfamiliar))
priorEStesting <- prior(
family = "t", param = c(location = 0, scale = 1 / sqrt(2), nu = 1),
lower = 0, label = "d"
)
priorESestimation <- prior(family = "t", param = c(location = 0, scale = 1 / sqrt(2), nu = 1), label = "d")
priorTau <- prior("invgamma", c(1, .15), label = "tau")
# conduct analyses
suppressWarnings(m_testing <- meta_bma(
y = effectSize, SE = SE, d = priorEStesting,
data = power_pose_unfamiliar, tau = priorTau, iter = 10
))
bf_reported <- c("d_10_fixed" = 4.449, "d_10_random" = 1.640)
expect_equal(unname(unlist(m_testing$BF)[c(2, 12)]), unname(bf_reported), tolerance = .001)
expect_equal(m_testing$inclusion$incl.BF, 3.139, tolerance = .001)
m_estimation <- meta_bma(
y = effectSize, SE = SE, data = power_pose_unfamiliar,
d = priorESestimation,
tau = priorTau, iter = 1000, summarize = "int"
)
expect_equal(m_estimation$estimates["averaged", c(4, 6:7)],
c("50%" = .18, "hpd95_lower" = .03, "hpd95_upper" = .33),
tolerance = .01
)
})
test_that("Gronau (2017): power pose analysis (only unfamiliar and informed t prior) ", {
skip_on_cran()
# data(power_pose_unfamiliar, package = "metaBMA")
tmp <- capture_output(eval(power_pose_unfamiliar))
priorEStesting <- prior(
family = "t",
param = c(location = 0.34999, scale = 0.1021, nu = 3),
lower = 0, label = "d"
)
priorESestimation <- prior(
family = "t",
param = c(location = 0.34999, scale = 0.1021, nu = 3),
label = "d"
)
priorTau <- prior("invgamma", c(1, .15), label = "tau")
# conduct analyses
suppressWarnings(m_testing <- meta_bma(
y = effectSize, SE = SE, d = priorEStesting,
data = power_pose_unfamiliar,
tau = priorTau, iter = 10
))
bf_reported <- c("d_10_fixed" = 6.846, "d_10_random" = 2.603)
expect_equal(unname(unlist(m_testing$BF)[c(2, 12)]), unname(bf_reported), tolerance = .0001)
expect_equal(m_testing$inclusion$incl.BF, 4.868, tolerance = .001)
suppressWarnings(
m_estimation <- meta_bma(
y = effectSize, SE = SE, data = power_pose_unfamiliar,
d = priorESestimation,
tau = priorTau, iter = 1000, summ = "int"
)
)
expect_equal(m_estimation$estimates["averaged", c(4, 6:7)],
c("50%" = .23, "hpd95_lower" = .10, "hpd95_upper" = .36),
tolerance = .02
)
})
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.