Nothing
## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ----setup--------------------------------------------------------------------
library(ordinalsimr)
## ----warning=FALSE------------------------------------------------------------
sim_results <- run_simulations(
sample_size = 80,
sample_prob = c(0.5, 0.5),
prob0 = c(0.1, 0.2, 0.3, 0.4),
prob1 = c(0.6, 0.2, 0.1, 0.1),
niter = 20
)
formatted_results <- dplyr::bind_rows(sim_results)
names(formatted_results)
formatted_results %>%
dplyr::select(
Wilcoxon, Fisher, `Chi Squared (No Correction)`,
`Chi Squared (Correction)`, `Prop. Odds`,
`Coin Indep. Test`,
sample_size
) %>%
calculate_power_t2error(alpha = 0.05, power_confidence_int = 95)
## ----warning=FALSE------------------------------------------------------------
sim_results <- run_simulations(
sample_size = 30:35,
sample_prob = c(0.5, 0.5),
prob0 = c(.4, .3, .3),
prob1 = c(.8, .1, .1), # note the matching probabilities between groups
niter = 50
)
formatted_results <- dplyr::bind_rows(sim_results)
names(formatted_results)
formatted_results %>%
dplyr::select(
Wilcoxon, Fisher, `Chi Squared (No Correction)`,
`Chi Squared (Correction)`, `Prop. Odds`,
`Coin Indep. Test`,
sample_size
) %>%
calculate_t1_error(alpha = 0.05, t1_error_confidence_int = 95)
## ----warning=FALSE------------------------------------------------------------
# Create a vector of sample sizes
sample_sizes <- c(30, 50, 100)
# Map over the sample sizes
lapply(sample_sizes, function(x) {
run_simulations(
sample_size = x,
sample_prob = c(0.5, 0.5),
prob0 = c(0.1, 0.2, 0.3, 0.4),
prob1 = c(0.6, 0.2, 0.1, 0.1),
niter = 100
) %>%
dplyr::bind_rows() %>%
dplyr::select(
Wilcoxon, Fisher, `Chi Squared (No Correction)`,
`Chi Squared (Correction)`, `Prop. Odds`,
`Coin Indep. Test`, sample_size
) %>%
calculate_power_t2error()
})
## ----warning=FALSE------------------------------------------------------------
# Choose sample sizes
sample_size <- c(50, 100)
# Set sample distributions as a proportion c(group1, group2)
sample_prob <- list(c(0.5, 0.5), c(0.75, 0.25))
# Trial 1 has matching probabilities between the 2 groups. Trial 2 has non-matching probabilities
prob0_list <- list(trial1_group1 = c(0.1, 0.2, 0.3, 0.4), trial2_group1 = c(0.1, 0.2, 0.3, 0.4))
prob1_list <- list(trial1_group2 = c(0.1, 0.2, 0.3, 0.4), trial2_group2 = c(0.2, 0.3, 0.3, 0.2))
# Number of iterations
niter <- c(20, 100)
## ----warning=FALSE------------------------------------------------------------
# Use tidyr::expand_grid as it creates a tibble, supporting the nested tibble structure
info_table <- tidyr::expand_grid(
sample_size,
sample_prob,
prob0_list,
prob1_list,
niter
)
info_table
## ----warning=FALSE------------------------------------------------------------
# Calculate either Power/T2 error or T1 error depending on your specific needs
many_sims <- mapply(
ordinalsimr::run_simulations,
sample_size = info_table$sample_size,
sample_prob = info_table$sample_prob,
prob0 = info_table$prob0_list,
prob1 = info_table$prob1_list,
niter = info_table$niter
)
length(many_sims)
many_sims[1]
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.