Nothing
## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ----eval=FALSE---------------------------------------------------------------
# install.packages("devtools")
# devtools::install_github("jpirmer/powerNLSEM", build_vignettes = TRUE)
## ----setup--------------------------------------------------------------------
library(powerNLSEM)
## -----------------------------------------------------------------------------
model <- "
# measurement models
X =~ 1*x1 + 0.8*x2 + 0.7*x3
Y =~ 1*y1 + 0.85*y2 + 0.78*y3
Z =~ 1*z1 + 0.9*z2 + 0.6*z3
# structural models
Y ~ 0.3*X + .2*Z + .2*X:Z
# residual variances
Y~~.7975*Y
X~~1*X
Z~~1*Z
# covariances
X~~0.5*Z
# measurement error variances
x1~~.1*x1
x2~~.2*x2
x3~~.3*x3
z1~~.2*z1
z2~~.3*z2
z3~~.4*z3
y1~~.5*y1
y2~~.4*y2
y3~~.3*y3
"
## ----echo = F-----------------------------------------------------------------
cat("# structural models
Y ~ 0.3*X + .2*Z + .2*X:Z
# residual variances
Y~~.7975*Y")
## ----warning=FALSE,error=FALSE, eval=TRUE, warning=FALSE----------------------
Result_Power <- powerNLSEM(model = model,
POI = c("Y~X", "Y~Z", "Y~X:Z"),
method = "UPI",
search_method = "adaptive",
steps = 2, # for computational reasons, better >= 10
power_modeling_method = "probit",
R = 200, # for computational reasons, better >= 2000
power_aim = .8,
alpha = .05,
alpha_power_modeling = .05,
CORES = 1,
seed = 2024)
## -----------------------------------------------------------------------------
names(Result_Power)
## -----------------------------------------------------------------------------
summary(Result_Power)
## -----------------------------------------------------------------------------
Result_Power$N
## -----------------------------------------------------------------------------
dim(Result_Power$est) # dimensions
head(Result_Power$est) # first 6 rows
## -----------------------------------------------------------------------------
head(Result_Power$se) # first 6 rows
## -----------------------------------------------------------------------------
head(Result_Power$fitOK)
## -----------------------------------------------------------------------------
Result_Power$convergenceRate
## -----------------------------------------------------------------------------
Result_Power$N_trials
## -----------------------------------------------------------------------------
Result_Power$power
Result_Power$beta
Result_Power$alpha
## -----------------------------------------------------------------------------
Result_Power$search_method
Result_Power$power_modeling_method
Result_Power$runtime
Result_Power$seed # general seed
head(Result_Power$args$seeds) # seeds within each simulation
## ----fig.width=7, fig.height=5, fig.align='center'----------------------------
plot(Result_Power)
## ----fig.width=7, fig.height=5, fig.align='center'----------------------------
plot(Result_Power, se = TRUE)
## ----fig.width=7, fig.height=5, fig.align='center'----------------------------
plot(Result_Power, se = TRUE, plot = "empirical")
## ----warning=FALSE------------------------------------------------------------
reanalyse.powerNLSEM(Result_Power,
powerLevels = c(.5, .6, .7, .8, .9, .95))
## ----fig.width=7, fig.height=5, fig.align='center'----------------------------
plot(Result_Power, se = TRUE,
power_aim = c(.5, .6, .7, .8, .9, .95))
## ----fig.width=7, fig.height=5, fig.align='center', warning=FALSE-------------
reanalyse.powerNLSEM(Result_Power,
powerLevels = c(.5, .6, .7, .8, .9),
alpha_power_modeling = .001)
plot(Result_Power, se = TRUE,
power_aim = c(.5, .6, .7, .8, .9),
alpha_power_modeling = .001)
## ----fig.width=7, fig.height=5, fig.align='center', warning=FALSE-------------
reanalyse.powerNLSEM(Result_Power,
powerLevels = c(.5, .6, .7, .8, .9),
alpha_power_modeling = 1)
plot(Result_Power, se = TRUE,
power_aim = c(.5, .6, .7, .8, .9),
alpha_power_modeling = 1)
## -----------------------------------------------------------------------------
populationModel <- "
# measurement models
X =~ 1*x1 + 0.8*x2 + 0.7*x3
Y =~ 1*y1 + 0.85*y2 + 0.78*y3
# structural models
Y ~ 0.3*X
# residual variances
Y~~.91*Y
X~~1*X
# measurement error variances
x1~~.1*x1
x2~~.2*x2
x3~~.3*x3
y1~~.5*y1
y2~~.4*y2
y3~~.3*y3
"
## ----warning=FALSE------------------------------------------------------------
Simple <- powerNLSEM(model = populationModel, POI = c("Y~X"), method = "UPI",
search_method = "adaptive", steps = 2,
power_modeling_method = "probit",
R = 200, power_aim = .8, alpha = .05,
seed = 2024, CORES = 1)
## -----------------------------------------------------------------------------
Simple$N
## ----warning=FALSE------------------------------------------------------------
VerifyRes <- powerNLSEM(model = populationModel, POI = c("Y~X"), method = "UPI",
search_method = "bruteforce", Ns = Simple$N,
R = 200, seed = 2024, CORES = 1)
## -----------------------------------------------------------------------------
summary(VerifyRes)$powersPerN
## ----echo=FALSE---------------------------------------------------------------
P <- summary(VerifyRes)$powersPerN[1,2]
Reps <- VerifyRes$args$R * VerifyRes$convergenceRate
P_LB <- P - qnorm(.975)*sqrt(P*(1-P)/Reps)
P_UB <- P + qnorm(.975)*sqrt(P*(1-P)/Reps)
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.