Nothing
## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
warning = FALSE)
## ----setup, include = FALSE---------------------------------------------------
library(MAGMA.R)
MAGMA_sim_data_tar <- readRDS(file = "data_tar_matched.rds")
MAGMA_sim_data_tar_exact <- readRDS(file ="data_tar_exact_matched.rds")
MAGMA_sim_data_2x2 <- readRDS(file = "data_2_x_2_matched.rds")
MAGMA_sim_data_2x2_exact <- readRDS(file = "data_2_x_2_exact_matched.rds")
Balance_tar <- readRDS(file = "Balance_tar.rds")
Balance_tar_exact <- readRDS(file = "Balance_tar_exact.rds")
Balance_2x2 <- readRDS(file = "Balance_2_x_2.rds")
Balance_2x2_exact <- readRDS(file = "Balance_2_x_2_exact.rds")
## ----data_introduction--------------------------------------------------------
str(MAGMA_sim_data)
## ----covariates_gifted--------------------------------------------------------
covariates_gifted <- c("GPA_school",
"IQ_score",
"Motivation",
"parents_academic",
"gender")
## ----unbalance_gifted---------------------------------------------------------
# Estimate overall and group specific descriptive statistics and Cohen’s d
descs_gifted_pre <- MAGMA_desc(Data = MAGMA_sim_data,
group = "gifted_support",
covariates = covariates_gifted,
filename = "stats_gifted_pre.docx")
descs_gifted_pre %>%
purrr::set_names(c("Overall N", "Overall Mean", "Overall SD",
"No Support N", "No Support Mean", "No Support SD",
"Support N", "Support Mean", "Support SD",
"d"))
# Estimating the four balance criteria
unbalance_gifted <- initial_unbalance(Data = MAGMA_sim_data,
group = "gifted_support",
covariates = covariates_gifted)
unbalance_gifted
## ----common_support_gifted, fig.height = 5, fig.width = 7.5-------------------
# Density overlap in propensity scores for gifted before matching
Density_overlap(Data = MAGMA_sim_data,
variable = "ps_gifted",
group = "gifted_support",
variable_name = "Propensity Score",
group_labels = c("No Support", "Support"),
group_name = "Gifted Support")
## ----standard_2_group_matching------------------------------------------------
# Conducting matching for gifted support
MAGMA_sim_data_gifted <- MAGMA(Data = MAGMA_sim_data,
group = "gifted_support",
dist = "ps_gifted",
cores = 2)
str(MAGMA_sim_data_gifted)
## ----Balance_standard_2_group_matching----------------------------------------
# Estimating the four balance criteria iteratively over possible sample sizes
Balance_gifted <- Balance_MAGMA(Data = MAGMA_sim_data_gifted,
group = "gifted_support",
covariates = covariates_gifted,
step = "step")
# Extracting balance criteria for 100 cases per group
Balance_100_criteria <- Balance_extract(Balance = Balance_gifted,
samplesize = 100,
effects = FALSE)
Balance_100_criteria
# Extracting pairwise effects for 100 cases per group
Balance_100_effects <- Balance_extract(Balance = Balance_gifted,
samplesize = 100,
effects = TRUE)
Balance_100_effects
## ----Plots_standard_2_group_matching, fig.height = 5, fig.width = 7.5---------
# Plotting balance trend over sample size
Plot_MAGMA(Balance = Balance_gifted,
criterion = c("Pillai", "d_ratio", "mean_g", "Adj_d_ratio"))
## ----Table_standard_2_group_matching------------------------------------------
Table_MAGMA(Balance = Balance_gifted,
filename = "Balance_gifted.docx")
## ----post_matching_standard_2-------------------------------------------------
# Computing descriptive statistics and pairwise effects for 100 cases per group
descs_gifted_post <- MAGMA_desc(Data = MAGMA_sim_data_gifted,
group = "gifted_support",
covariates = covariates_gifted,
covariates_ordinal = "teacher_ability_rating",
covariates_nominal = "enrichment",
step_num = 100,
step_var = "step",
filename = "stats_gifted_post.docx")
# Displaying the table with defined colum names
descs_gifted_post %>%
purrr::set_names(c("Overall N", "Overall Mean", "Overall SD",
"No Support N", "No Support Mean", "No Support SD",
"Support N", "Support Mean", "Support SD",
"d"))
## ----exact_2_group_matching---------------------------------------------------
MAGMA_sim_data_gifted_exact <- MAGMA_exact(Data = MAGMA_sim_data,
group = "gifted_support",
dist = "ps_gifted",
exact = "enrichment",
cores = 2)
str(MAGMA_sim_data_gifted_exact)
## ----Balance_exact_2_group_matching, fig.height = 5, fig.width = 7.5----------
Balance_gifted_exact <- Balance_MAGMA(Data = MAGMA_sim_data_gifted_exact,
group = "gifted_support",
covariates = covariates_gifted,
step = "step")
# Extracting balance criteria for 100 cases per group
Balance_100_criteria_exact <- Balance_extract(Balance = Balance_gifted_exact,
samplesize = 100,
effects = FALSE)
Balance_100_criteria_exact
# Extracting pairwise effects for 100 cases per group
Balance_100_effects_exact <- Balance_extract(Balance = Balance_gifted_exact,
samplesize = 100,
effects = TRUE)
Balance_100_effects_exact
# Plotting trend over increasing sample size
Plot_MAGMA(Balance = Balance_gifted_exact,
criterion = c("Pillai", "d_ratio", "mean_g", "Adj_d_ratio"))
# Creating table
Table_MAGMA(Balance = Balance_gifted_exact,
filename = "Balance_gifted_exact.docx")
# Computing descriptive statistics and pairwise effects for 100 cases per group
descs_gifted_post_exact <- MAGMA_desc(Data = MAGMA_sim_data_gifted_exact,
group = "gifted_support",
covariates = covariates_gifted,
step_num = 100,
step_var = "step",
filename = "stats_gifted_post_exact.docx")
# Displaying the table with defined colum names
descs_gifted_post_exact %>%
purrr::set_names(c("Overall N", "Overall Mean", "Overall SD",
"No Support N", "No Support Mean", "No Support SD",
"Support N", "Support Mean", "Support SD",
"d"))
## ----covariates_tar-----------------------------------------------------------
covariates_tar <- c("GPA_school",
"IQ_score",
"Motivation",
"parents_academic",
"gifted_support")
## ----unbalance_tar, fig.height = 5, fig.width = 7.5---------------------------
# Computing descriptive statistics and all pairwise effects for three groups
descs_tar_pre <- MAGMA_desc(Data = MAGMA_sim_data,
group = "teacher_ability_rating",
covariates = covariates_tar,
filename = "stats_tar_pre.docx")
descs_tar_pre %>%
purrr::set_names(c("Overall N", "Overall Mean", "Overall SD",
"BA N", "BA Support Mean", "BA Support SD",
"A N", "A Mean", "A SD",
"AA N", "AA Mean", "AA SD",
"d BA-A", "d BA-AA", "d A-AA"))
# Estimating and printing initial unbalance for teacher rated ability
unbalance_tar <- initial_unbalance(Data = MAGMA_sim_data,
group = "teacher_ability_rating",
covariates = covariates_tar)
unbalance_tar
# Estimating and plotting density overlap in teacher rated ability propensity scores
# Returns vector for each pairwise overlap
Density_overlap(Data = MAGMA_sim_data,
variable = "ps_tar",
group = "teacher_ability_rating",
variable_name = "Propensity Score",
group_labels = c("Below Average", "Average", "Above Average"),
group_name = "Teacher Rated Ability")
## ----standard_3_group_matching, eval = FALSE----------------------------------
# MAGMA_sim_data_tar <- MAGMA(Data = MAGMA_sim_data,
# group = "teacher_ability_rating",
# dist = "ps_tar",
# cores = 2)
## ----standard_3_group_matching_str--------------------------------------------
str(MAGMA_sim_data_tar)
## ----Balance_3_group_matching, eval = FALSE-----------------------------------
# Balance_tar <- Balance_MAGMA(Data = MAGMA_sim_data_tar,
# group = "teacher_ability_rating",
# covariates = covariates_tar,
# step = "step")
## ----Balance_3_group_matching_results, fig.height = 5, fig.width = 7.5--------
# Balance criteria for 100 cases per group
Balance_100_tar_criteria <- Balance_extract(Balance = Balance_tar,
samplesize = 100,
effects = FALSE)
Balance_100_tar_criteria
# Extracting pairwise effects for 100 cases per group
Balance_100_tar_effects <- Balance_extract(Balance = Balance_tar,
samplesize = 100,
effects = TRUE)
Balance_100_tar_effects
# Plotting trend over increasing sample size
Plot_MAGMA(Balance = Balance_tar,
criterion = c("Pillai", "d_ratio", "mean_g", "Adj_d_ratio"))
# Creating table
Table_MAGMA(Balance = Balance_tar,
filename = "Balance_tar.docx")
## ----post_matching_standard_3-------------------------------------------------
# Computing descriptive statistics and pairwise effects for 100 cases per group
descs_tar_post <- MAGMA_desc(Data = MAGMA_sim_data_tar,
group = "teacher_ability_rating",
covariates = covariates_tar,
step_num = 100,
step_var = "step",
filename = "stats_tar_post.docx")
# Displaying the table with defined colum names
descs_tar_post %>%
purrr::set_names(c("Overall N", "Overall Mean", "Overall SD",
"BA N", "BA Support Mean", "BA Support SD",
"A N", "A Mean", "A SD",
"AA N", "AA Mean", "AA SD",
"d BA-A", "d BA-AA", "d A-AA"))
## ----exact_3_group_matching, eval = FALSE-------------------------------------
# MAGMA_sim_data_tar_exact <- MAGMA_exact(Data = MAGMA_sim_data,
# group = "teacher_ability_rating",
# dist = "ps_tar",
# exact = "gender",
# cores = 2)
## ----exact_3_group_matching_str-----------------------------------------------
str(MAGMA_sim_data_tar_exact)
## ----exact_3_group_matching_balance, eval = FALSE-----------------------------
# Balance_tar_exact <- Balance_MAGMA(Data = MAGMA_sim_data_tar_exact,
# group = "teacher_ability_rating",
# covariates = covariates_tar,
# step = "step")
## ----exact_3_group_matching_results, fig.height = 5, fig.width = 7.5----------
# Balance criteria for 100 cases per group
Balance_100_tar_criteria_exact <- Balance_extract(Balance = Balance_tar_exact,
samplesize = 100,
effects = FALSE)
Balance_100_tar_criteria_exact
# Extracting pairwise effects for 100 cases per group
Balance_100_tar_effects_exact <- Balance_extract(Balance = Balance_tar_exact,
samplesize = 100,
effects = TRUE)
Balance_100_tar_effects_exact
# Plotting trend over increasing sample size
Plot_MAGMA(Balance = Balance_tar_exact,
criterion = c("Pillai", "d_ratio", "mean_g", "Adj_d_ratio")) #Could be omitted
# Creating table
Table_MAGMA(Balance = Balance_tar_exact,
filename = "Balance_tar_exact.docx")
# Computing descriptive statistics and pairwise effects for 100 cases per group
descs_tar_post_exact <- MAGMA_desc(Data = MAGMA_sim_data_tar_exact,
group = "teacher_ability_rating",
covariates = covariates_tar,
step_num = 100,
step_var = "step",
filename = "stats_tar_post_exact.docx")
# Displaying the table with defined column names
descs_tar_post_exact %>%
purrr::set_names(c("Overall N", "Overall Mean", "Overall SD",
"BA N", "BA Support Mean", "BA Support SD",
"A N", "A Mean", "A SD",
"AA N", "AA Mean", "AA SD",
"d BA-A", "d BA-AA", "d A-AA"))
## ----covariates_2x2, fig.height = 5, fig.width = 7.5--------------------------
# Defining the covariates
covariates_2x2 <- c("GPA_school",
"IQ_score",
"Motivation",
"parents_academic",
"gender")
# Computing descriptive statistics and all pairwise effects
descs_2x2_pre <- MAGMA_desc(Data = MAGMA_sim_data,
group = c("gifted_support", "enrichment"),
covariates = covariates_2x2,
filename = "stats_2x2_pre.docx")
descs_2x2_pre %>%
purrr::set_names(c("Overall N", "Overall Mean", "Overall SD",
"Sup & No En N", "Sup & No En Mean",
"Sup & No En SD",
"Sup & En N", "Sup & En Mean", "Sup & En SD",
"No Sup & No En N", "No Sup & No En Mean", "No Sup & No En SD",
"No Sup & En N", "No Sup & En Mean", "No Sup & En SD",
"d YesNo-YesYes", "d YesNo-NoNo", "d YesNo-NoYes",
"d YesYes-NoNo", "d YesYes-YNoYes",
"d NoNo-NoYes"))
# Estimating initial unbalance
unbalance_2x2 <- initial_unbalance(Data = MAGMA_sim_data,
group = c("gifted_support", "enrichment"),
covariates = covariates_2x2)
unbalance_2x2
# Estimating and plotting density overlap in gifted support & enrichment propensity score
Density_overlap(Data = MAGMA_sim_data,
variable = "ps_2x2",
group = c("gifted_support", "enrichment"),
variable_name = "Propensity Score",
group_labels = c("No Support & No Enrichment",
"No Support & Enrichment",
"Support & No Enrichment",
"Support & Enrichment"),
group_name = "Gifted Support & Enrichment")
## ----standard_2x2_group_matching, eval = FALSE--------------------------------
# MAGMA_sim_data_2x2 <- MAGMA(Data = MAGMA_sim_data,
# group = c("gifted_support", "enrichment"),
# dist = "ps_2x2",
# cores = 2)
## ----standard_2x2_group_matching_str------------------------------------------
str(MAGMA_sim_data_2x2)
## ----Balance_2x2_group_matching, eval = FALSE---------------------------------
# Balance_2x2 <- Balance_MAGMA(Data = MAGMA_sim_data_2x2,
# group = c("gifted_support", "enrichment"),
# covariates = covariates_2x2,
# step = "step")
## ----Balance_2x2_group_matching_results, fig.height = 5, fig.width = 7.5------
# Balance criteria for 100 cases per group
Balance_100_2x2_criteria <- Balance_extract(Balance = Balance_2x2,
samplesize = 100,
effects = FALSE)
Balance_100_2x2_criteria
# Extracting pairwise effects for 100 cases per group
Balance_100_2x2_effects <- Balance_extract(Balance = Balance_2x2,
samplesize = 100,
effects = TRUE)
Balance_100_2x2_effects
# Plotting trend over increasing sample size
Plot_MAGMA(Balance = Balance_2x2,
criterion = c("Pillai", "d_ratio", "mean_g", "Adj_d_ratio"))
# Creating table
Table_MAGMA(Balance = Balance_2x2,
filename = "Balance_2x2.docx")
# Computing descriptive statistics and all pairwise effects after matching
descs_2x2_post <- MAGMA_desc(Data = MAGMA_sim_data_2x2,
group = c("gifted_support", "enrichment"),
covariates = covariates_2x2,
step_num = 100,
step_var = "step",
filename = "stats_post_pre.docx")
descs_2x2_post %>%
purrr::set_names(c("Overall N", "Overall Mean", "Overall SD",
"Sup & No En N", "Sup & No En Mean",
"Sup & No En SD",
"Sup & En N", "Sup & En Mean", "Sup & En SD",
"No Sup & No En N", "No Sup & No En Mean", "No Sup & No En SD",
"No Sup & En N", "No Sup & En Mean", "No Sup & En SD",
"d YesNo-YesYes", "d YesNo-NoNo", "d YesNo-NoYes",
"d YesYes-NoNo", "d YesYes-YNoYes",
"d NoNo-NoYes"))
## ----exact_2x2_group_matching, eval = FALSE-----------------------------------
# MAGMA_sim_data_2x2_exact <- MAGMA_exact(Data = MAGMA_sim_data,
# group = c("gifted_support", "enrichment"),
# dist = "ps_2x2",
# exact = "teacher_ability_rating",
# cores = 2)
## ----exact_2x2_group_matching_str---------------------------------------------
str(MAGMA_sim_data_2x2_exact)
## ----exact_2x2_group_matching_balance, eval = FALSE---------------------------
# # Estimating Balance
# Balance_2x2_exact <- Balance_MAGMA(Data = MAGMA_sim_data_2x2_exact,
# group = c("gifted_support", "enrichment"),
# covariates = covariates_2x2,
# step = "step") #Not necessary to define here
## ----exact_2x2_group_matching_results, fig.height = 5, fig.width = 7.5--------
# Balance criteria for 100 cases per group
Balance_100_2x2_criteria_exact <- Balance_extract(Balance = Balance_2x2_exact,
samplesize = 100,
effects = FALSE)
Balance_100_2x2_criteria_exact
# Extracting pairwise effects for 100 cases per group
Balance_100_2x2_effects_exact <- Balance_extract(Balance = Balance_2x2_exact,
samplesize = 100,
effects = TRUE)
Balance_100_2x2_effects_exact
# Plotting trend over increasing sample size
Plot_MAGMA(Balance = Balance_2x2_exact,
criterion = c("Pillai", "d_ratio", "mean_g", "Adj_d_ratio")) #Could be omitted
# Creating table
Table_MAGMA(Balance = Balance_2x2_exact,
filename = "Balance_2x2_exact.docx")
# Computing descriptive statistics and all pairwise effects post matching
descs_2x2_post <- MAGMA_desc(Data = MAGMA_sim_data_2x2_exact,
group = c("gifted_support", "enrichment"),
covariates = covariates_2x2,
step_num = 100,
step_var = "step",
filename = "stats_2x2_post.docx")
descs_2x2_post %>%
purrr::set_names(c("Overall N", "Overall Mean", "Overall SD",
"Sup & No En N", "Sup & No En Mean",
"Sup & No En SD",
"Sup & En N", "Sup & En Mean", "Sup & En SD",
"No Sup & No En N", "No Sup & No En Mean", "No Sup & No En SD",
"No Sup & En N", "No Sup & En Mean", "No Sup & En SD",
"d YesNo-YesYes", "d YesNo-NoNo", "d YesNo-NoYes",
"d YesYes-NoNo", "d YesYes-YNoYes",
"d NoNo-NoYes"))
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.