Main Effects and Interactions
For factorial designs, specify contrasts for main effects and interactions:
# 2x2 factorial design
set.seed(234)
n_trials <- 60
factor_A <- rep(c("A1", "A2"), each = 30)
factor_B <- rep(rep(c("B1", "B2"), each = 15), 2)
factorial_onsets <- sort(runif(n_trials, 0, 350))
emodel_factorial <- event_model(
onset ~ hrf(A, B, contrasts = contrast_set(
oneway_contrast(~ A, name = "main_A"),
oneway_contrast(~ B, name = "main_B"),
interaction_contrast(~ A * B, name = "A_by_B")
)),
data = data.frame(
onset = factorial_onsets,
A = factor(factor_A),
B = factor(factor_B),
block = factor(rep(1, n_trials))
),
block = ~ block,
sampling_frame = sframe
)
interaction_contrasts <- contrast_weights(emodel_factorial)
lapply(interaction_contrasts, function(x) round(x$weights, 3))
#> $`A_B#main_A`
#> main_A_1
#> A.A1_B.B1 -1
#> A.A2_B.B1 1
#> A.A1_B.B2 -1
#> A.A2_B.B2 1
#>
#> $`A_B#main_B`
#> main_B_1
#> A.A1_B.B1 -1
#> A.A2_B.B1 -1
#> A.A1_B.B2 1
#> A.A2_B.B2 1
#>
#> $`A_B#A_by_B`
#> A_by_B_1
#> A1_B1 1
#> A2_B1 -1
#> A1_B2 -1
#> A2_B2 1