3  Caspase (EGL)

Data

Description

Variable Description
Stage

Developmental stage

Mouse

Mouse unique identifier

Condition

Hypoxia condition: Normoxia (N) vs Intermittent Hypoxia (IH)

Z

Bregma coordinates (Ant, Med, Post)

A_EGL

Area of EGL (μm²)

Dens_EGL

Density of cleaved caspase 3^(+) cells in the EGL area (Cells/μm²)

Prop_C_EGL

Proportion of cleaved caspase 3^(+) marking in the EGL area

Variable Description
Stage

Developmental stage

Mouse

Mouse unique identifier

Condition

Hypoxia condition: Normoxia (N) vs Intermittent Hypoxia (IH)

Z

Bregma coordinates (Ant, Med, Post)

A_EGL

Area of EGL (μm²)

Dens_EGL

Density of cleaved caspase 3^(+) cells in the EGL area (Cells/μm²)

Prop_C_EGL

Proportion of cleaved caspase 3^(+) marking in the EGL area

Correlations

3.1 Area of EGL

3.1.1 Data Exploration

Distribution:

Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 1.884 0.409 0.167 0.217 0.806 1.465 2.441 0.512 −1.896 6
IH 1.485 0.669 0.448 0.451 1.232 0.582 2.033 −1.048 −0.197 4
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 1.884 0.409 0.167 0.217 0.806 1.465 2.441 0.512 −1.896 6
IH 1.485 0.669 0.448 0.451 1.232 0.582 2.033 −1.048 −0.197 4
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 1.691 0.459 0.211 0.272 0.627 1.175 2.594 1.082 1.071 8
IH 1.073 0.774 0.599 0.721 1.406 0.206 2.161 0.588 −0.872 5
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 1.691 0.459 0.211 0.272 0.627 1.175 2.594 1.082 1.071 8
IH 1.073 0.774 0.599 0.721 1.406 0.206 2.161 0.588 −0.872 5
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 0.775 0.594 0.353 0.766 1.256 0.208 1.607 0.624 −1.743 11
IH 0.917 0.586 0.343 0.639 1.095 0.282 1.768 0.615 −1.695 8
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 0.775 0.594 0.353 0.766 1.256 0.208 1.607 0.624 −1.743 11
IH 0.917 0.586 0.343 0.639 1.095 0.282 1.768 0.615 −1.695 8

3.1.2 Models & Diagnostics

Exploring some Generalized Linear (Mixed) model candidates:

Model call:

```{r}
glmmTMB(formula = A_EGL ~ Condition * Z + (1 | Mouse), data = data, 
    family = Gamma("log"), REML = TRUE, ziformula = ~0, dispformula = ~1)
```

Performance:

performance::performance(mod)
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
99.83 104.19 113.73 0.58 0.32 0.38 0.40 0.49
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
99.83 104.19 113.73 0.58 0.32 0.38 0.40 0.49

Residuals:

performance::check_model(
  mod, panel = FALSE,
  check = c("pp_check", "qq", "reqq", "linearity", "homogeneity")
)

Predictions:

Simulating data from the model for pseudo “Posterior Predictive” plots.

Simulated data vs observed data:

Simulated statistics vs observed ones:

Potential outliers:

Model call:

```{r}
glmmTMB(formula = A_EGL ~ Condition * Z + (1 | Mouse), data = data, 
    family = gaussian("log"), REML = TRUE, ziformula = ~0, dispformula = ~1)
```

Performance:

performance::performance(mod)
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
95.19 99.56 109.10 0.54 0.30 0.35 0.37 0.44
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
95.19 99.56 109.10 0.54 0.30 0.35 0.37 0.44

Residuals:

performance::check_model(
  mod, panel = FALSE,
  check = c("pp_check", "qq", "reqq", "linearity", "homogeneity")
)

Predictions:

Simulating data from the model for pseudo “Posterior Predictive” plots.

Simulated data vs observed data:

Simulated statistics vs observed ones:

Potential outliers:

No potential outliers detected by the model.

3.1.3 Effects Analysis

```{r}
glmmTMB(formula = A_EGL ~ Condition * Z + (1 | Mouse), data = data, 
    family = Gamma("log"), REML = TRUE, ziformula = ~0, dispformula = ~1)
```

3.1.3.1 Coefficients

❖ All effects (Wald):

parameters::parameters(
  mod, component = "conditional", effects = "fixed",
  exponentiate = should_exp(mod), p_adjust = "none", summary = TRUE, digits = 3
)
Parameter Coefficient SE 95% CI z p
(Intercept) 1.127 0.164 (0.85, 1.50) 0.824 0.410
Condition1 1.172 0.170 (0.88, 1.56) 1.092 0.275
Z1 1.467 0.185 (1.15, 1.88) 3.038 0.002 **
Z2 1.058 0.122 (0.84, 1.33) 0.491 0.623
Condition1 * Z1 1.114 0.141 (0.87, 1.43) 0.848 0.396
Condition1 * Z2 1.134 0.131 (0.90, 1.42) 1.088 0.276
Model: A_EGL ~ Condition * Z (42 Observations)
Parameter Coefficient SE 95% CI z p
(Intercept) 1.127 0.164 (0.85, 1.50) 0.824 0.410
Condition1 1.172 0.170 (0.88, 1.56) 1.092 0.275
Z1 1.467 0.185 (1.15, 1.88) 3.038 0.002 **
Z2 1.058 0.122 (0.84, 1.33) 0.491 0.623
Condition1 * Z1 1.114 0.141 (0.87, 1.43) 0.848 0.396
Condition1 * Z2 1.134 0.131 (0.90, 1.42) 1.088 0.276
Model: A_EGL ~ Condition * Z (42 Observations)

❖ Main effects (Wald Chi-Square):

car::Anova(mod, type = 3)
term statistic df p.value
Condition 1.19 1 0.270
Z 17.71 2 <0.001 ***
Condition:Z 4.62 2 0.100
term statistic df p.value
Condition 1.19 1 0.270
Z 17.71 2 <0.001 ***
Condition:Z 4.62 2 0.100

❖ Main effects (Likelihood Ratio Test):

LRT(mod, pred = "Condition")
model df aic bic log_lik deviance chisq chi_df pr_chisq
mod_reduced 5 83.79 92.47 -36.89 73.79
mod_full 8 84.61 98.51 -34.30 68.61 5.18 3 0.160
model df aic bic log_lik deviance chisq chi_df pr_chisq
mod_reduced 5 83.79 92.47 -36.89 73.79
mod_full 8 84.61 98.51 -34.30 68.61 5.18 3 0.160
Important

Our LRT() method removes the predictor plus all its interactions

3.1.3.2 Marginal Effects

Marginal means & Contrasts for each predictor:

Marginal Means:

emmeans(mod, specs = pred, type = "response")
Condition response SE df lower.CL upper.CL
N 1.321 0.247 40 0.904 1.929
IH 0.962 0.213 40 0.614 1.506
Condition response SE df lower.CL upper.CL
N 1.321 0.247 40 0.904 1.929
IH 0.962 0.213 40 0.614 1.506
- Results are averaged over the levels of: Z
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale

Contrasts:

emmeans(mod, specs = pred, type = "response") |> 
  contrast(method = "pairwise", adjust = "none", infer = TRUE)
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.373 0.399 40 0.764 2.47 1 1.092 0.281
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.373 0.399 40 0.764 2.47 1 1.092 0.281
- Results are averaged over the levels of: Z
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale
- Tests are performed on the log scale

Boxplot:

Marginal Means:

emmeans(mod, specs = pred, type = "response")
Z response SE df lower.CL upper.CL
Ant 1.654 0.334 40 1.1 2.486
Med 1.193 0.224 40 0.816 1.744
Post 0.726 0.122 40 0.517 1.019
Z response SE df lower.CL upper.CL
Ant 1.654 0.334 40 1.1 2.486
Med 1.193 0.224 40 0.816 1.744
Post 0.726 0.122 40 0.517 1.019
- Results are averaged over the levels of: Condition
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale

Contrasts:

emmeans(mod, specs = pred, type = "response") |> 
  contrast(method = "pairwise", adjust = "none", infer = TRUE)
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
Ant / Med 1.386 0.3 40 0.895 2.147 1 1.508 0.139
Ant / Post 2.279 0.466 40 1.507 3.446 1 4.025 <0.001 ***
Med / Post 1.644 0.304 40 1.131 2.389 1 2.687 0.010 *
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
Ant / Med 1.386 0.3 40 0.895 2.147 1 1.508 0.139
Ant / Post 2.279 0.466 40 1.507 3.446 1 4.025 <0.001 ***
Med / Post 1.644 0.304 40 1.131 2.389 1 2.687 0.010 *
- Results are averaged over the levels of: Condition
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale
- Tests are performed on the log scale

Boxplot:

Marginal Means:

emmeans(mod, specs = emmeans_formula, type = "response")
Condition response SE df lower.CL upper.CL
N 2.158 0.568 40 1.267 3.675
IH 1.267 0.394 40 0.675 2.377
Condition response SE df lower.CL upper.CL
N 2.158 0.568 40 1.267 3.675
IH 1.267 0.394 40 0.675 2.377
Condition response SE df lower.CL upper.CL
N 1.585 0.375 40 0.983 2.556
IH 0.898 0.261 40 0.499 1.617
Condition response SE df lower.CL upper.CL
N 1.585 0.375 40 0.983 2.556
IH 0.898 0.261 40 0.499 1.617
Condition response SE df lower.CL upper.CL
N 0.673 0.149 40 0.431 1.053
IH 0.782 0.195 40 0.472 1.294
Condition response SE df lower.CL upper.CL
N 0.673 0.149 40 0.431 1.053
IH 0.782 0.195 40 0.472 1.294
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale

Contrasts:

emmeans(mod, specs = emmeans_formula, type = "response") |> 
  contrast(method = "pairwise", adjust = "none", infer = TRUE)
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.703 0.702 40 0.741 3.917 1 1.293 0.203
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.703 0.702 40 0.741 3.917 1 1.293 0.203
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.765 0.66 40 0.829 3.76 1 1.519 0.137
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.765 0.66 40 0.829 3.76 1 1.519 0.137
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.861 0.285 40 0.441 1.681 1 −0.452 0.654
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.861 0.285 40 0.441 1.681 1 −0.452 0.654
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale
- Tests are performed on the log scale
emmeans(mod, specs = emmeans_formula, type = "response") |>
  contrast(interaction = "pairwise", by = NULL, adjust = "none", infer = T)
Condition ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.965 0.418 40 0.402 2.314 1 −0.082 0.935
Condition ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.965 0.418 40 0.402 2.314 1 −0.082 0.935
Condition ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.978 0.822 40 0.855 4.58 1 1.643 0.108
Condition ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.978 0.822 40 0.855 4.58 1 1.643 0.108
Condition ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 2.05 0.763 40 0.966 4.351 1 1.928 0.061
Condition ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 2.05 0.763 40 0.966 4.351 1 1.928 0.061
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale
- Tests are performed on the log scale

Boxplot:


3.2 Density of Cleaved Caspase 3+ cells (EGL)

3.2.1 Data Exploration

Distribution:

Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 153.403 104.366 10,892.199 0.68 158.904 52.228 338.378 1.148 1.826 6
IH 238.427 112.334 12,618.924 0.471 198.774 75.875 328.271 −1.597 2.677 4
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 153.403 104.366 10,892.199 0.68 158.904 52.228 338.378 1.148 1.826 6
IH 238.427 112.334 12,618.924 0.471 198.774 75.875 328.271 −1.597 2.677 4
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 131.706 77.991 6,082.619 0.592 156.966 16.575 226.085 −0.469 −0.911 8
IH 110.49 86.459 7,475.185 0.783 141.472 20.359 249.895 1.206 2.038 5
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 131.706 77.991 6,082.619 0.592 156.966 16.575 226.085 −0.469 −0.911 8
IH 110.49 86.459 7,475.185 0.783 141.472 20.359 249.895 1.206 2.038 5
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 81.275 52.337 2,739.155 0.644 106.154 7.257 158.718 0.036 −1.401 11
IH 164.813 180.642 32,631.375 1.096 159.165 9.105 579.506 2.084 4.953 8
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 81.275 52.337 2,739.155 0.644 106.154 7.257 158.718 0.036 −1.401 11
IH 164.813 180.642 32,631.375 1.096 159.165 9.105 579.506 2.084 4.953 8

3.2.2 Models & Diagnostics

Exploring some Generalized Linear (Mixed) model candidates:

Model call:

```{r}
glmmTMB(formula = Dens_EGL ~ Condition * Z + (1 | Mouse), data = data, 
    family = Gamma("log"), REML = TRUE, ziformula = ~0, dispformula = ~1)
```

Performance:

performance::performance(mod)
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
511.80 516.16 525.70 0.35 0.14 0.25 83.11 0.74
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
511.80 516.16 525.70 0.35 0.14 0.25 83.11 0.74

Residuals:

performance::check_model(
  mod, panel = FALSE,
  check = c("pp_check", "qq", "reqq", "linearity", "homogeneity")
)

Predictions:

Simulating data from the model for pseudo “Posterior Predictive” plots.

Simulated data vs observed data:

Simulated statistics vs observed ones:

Potential outliers:

No potential outliers detected by the model.

Model call:

```{r}
glmmTMB(formula = Dens_EGL ~ Condition * Z + (1 | Mouse), data = data, 
    family = gaussian("log"), REML = TRUE, ziformula = ~0, dispformula = ~1)
```

Performance:

performance::performance(mod)
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
531.37 535.73 545.27 3.38e-05 1.53e-05 1.85e-05 78.35 91.49
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
531.37 535.73 545.27 3.38e-05 1.53e-05 1.85e-05 78.35 91.49

Residuals:

performance::check_model(
  mod, panel = FALSE,
  check = c("pp_check", "qq", "reqq", "linearity", "homogeneity")
)

Predictions:

Simulating data from the model for pseudo “Posterior Predictive” plots.

Simulated data vs observed data:

Simulated statistics vs observed ones:

Potential outliers:

3.2.3 Effects Analysis

```{r}
glmmTMB(formula = Dens_EGL ~ Condition * Z + (1 | Mouse), data = data, 
    family = Gamma("log"), REML = TRUE, ziformula = ~0, dispformula = ~1)
```

3.2.3.1 Coefficients

❖ All effects (Wald):

parameters::parameters(
  mod, component = "conditional", effects = "fixed",
  exponentiate = should_exp(mod), p_adjust = "none", summary = TRUE, digits = 3
)
Parameter Coefficient SE 95% CI z p
(Intercept) 136.172 24.177 (96.15, 192.85) 27.676 < .001
Condition1 0.853 0.151 (0.60, 1.21) -0.899 0.369
Z1 1.482 0.292 (1.01, 2.18) 1.997 0.046 *
Z2 0.898 0.167 (0.62, 1.29) -0.578 0.563
Condition1 * Z1 0.975 0.190 (0.67, 1.43) -0.133 0.894
Condition1 * Z2 1.165 0.228 (0.79, 1.71) 0.778 0.437
Model: Dens_EGL ~ Condition * Z (42 Observations)
Parameter Coefficient SE 95% CI z p
(Intercept) 136.172 24.177 (96.15, 192.85) 27.676 < .001
Condition1 0.853 0.151 (0.60, 1.21) -0.899 0.369
Z1 1.482 0.292 (1.01, 2.18) 1.997 0.046 *
Z2 0.898 0.167 (0.62, 1.29) -0.578 0.563
Condition1 * Z1 0.975 0.190 (0.67, 1.43) -0.133 0.894
Condition1 * Z2 1.165 0.228 (0.79, 1.71) 0.778 0.437
Model: Dens_EGL ~ Condition * Z (42 Observations)

❖ Main effects (Wald Chi-Square):

car::Anova(mod, type = 3)
term statistic df p.value
Condition 0.81 1 0.370
Z 4.34 2 0.110
Condition:Z 0.77 2 0.680
term statistic df p.value
Condition 0.81 1 0.370
Z 4.34 2 0.110
Condition:Z 0.77 2 0.680

❖ Main effects (Likelihood Ratio Test):

LRT(mod, pred = "Condition")
model df aic bic log_lik deviance chisq chi_df pr_chisq
mod_reduced 5 497.13 505.82 -243.56 487.13
mod_full 8 500.88 514.78 -242.44 484.88 2.24 3 0.520
model df aic bic log_lik deviance chisq chi_df pr_chisq
mod_reduced 5 497.13 505.82 -243.56 487.13
mod_full 8 500.88 514.78 -242.44 484.88 2.24 3 0.520
Important

Our LRT() method removes the predictor plus all its interactions

3.2.3.2 Marginal Effects

Marginal means & Contrasts for each predictor:

Marginal Means:

emmeans(mod, specs = pred, type = "response")
Condition response SE df lower.CL upper.CL
N 116.091 26.905 40 72.673 185.45
IH 159.725 42.966 40 92.739 275.095
Condition response SE df lower.CL upper.CL
N 116.091 26.905 40 72.673 185.45
IH 159.725 42.966 40 92.739 275.095
- Results are averaged over the levels of: Z
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale

Contrasts:

emmeans(mod, specs = pred, type = "response") |> 
  contrast(method = "pairwise", adjust = "none", infer = TRUE)
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.727 0.258 40 0.355 1.49 1 −0.899 0.374
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.727 0.258 40 0.355 1.49 1 −0.899 0.374
- Results are averaged over the levels of: Z
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale
- Tests are performed on the log scale

Boxplot:

Marginal Means:

emmeans(mod, specs = pred, type = "response")
Z response SE df lower.CL upper.CL
Ant 201.754 57.247 40 113.701 357.998
Med 122.317 31.897 40 72.211 207.193
Post 102.318 23.548 40 64.26 162.914
Z response SE df lower.CL upper.CL
Ant 201.754 57.247 40 113.701 357.998
Med 122.317 31.897 40 72.211 207.193
Post 102.318 23.548 40 64.26 162.914
- Results are averaged over the levels of: Condition
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale

Contrasts:

emmeans(mod, specs = pred, type = "response") |> 
  contrast(method = "pairwise", adjust = "none", infer = TRUE)
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
Ant / Med 1.649 0.554 40 0.837 3.251 1 1.49 0.144
Ant / Post 1.972 0.655 40 1.007 3.86 1 2.043 0.048 *
Med / Post 1.195 0.373 40 0.636 2.247 1 0.572 0.571
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
Ant / Med 1.649 0.554 40 0.837 3.251 1 1.49 0.144
Ant / Post 1.972 0.655 40 1.007 3.86 1 2.043 0.048 *
Med / Post 1.195 0.373 40 0.636 2.247 1 0.572 0.571
- Results are averaged over the levels of: Condition
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale
- Tests are performed on the log scale

Boxplot:

Marginal Means:

emmeans(mod, specs = emmeans_formula, type = "response")
Condition response SE df lower.CL upper.CL
N 167.619 61.773 40 79.588 353.022
IH 242.84 103.644 40 102.494 575.361
Condition response SE df lower.CL upper.CL
N 167.619 61.773 40 79.588 353.022
IH 242.84 103.644 40 102.494 575.361
Condition response SE df lower.CL upper.CL
N 121.445 38.946 40 63.518 232.198
IH 123.196 52.017 40 52.48 289.204
Condition response SE df lower.CL upper.CL
N 121.445 38.946 40 63.518 232.198
IH 123.196 52.017 40 52.48 289.204
Condition response SE df lower.CL upper.CL
N 76.859 22.233 40 42.834 137.912
IH 136.208 47.993 40 66.824 277.634
Condition response SE df lower.CL upper.CL
N 76.859 22.233 40 42.834 137.912
IH 136.208 47.993 40 66.824 277.634
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale

Contrasts:

emmeans(mod, specs = emmeans_formula, type = "response") |> 
  contrast(method = "pairwise", adjust = "none", infer = TRUE)
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.69 0.387 40 0.222 2.142 1 −0.662 0.512
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.69 0.387 40 0.222 2.142 1 −0.662 0.512
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.986 0.531 40 0.332 2.929 1 −0.027 0.979
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.986 0.531 40 0.332 2.929 1 −0.027 0.979
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.564 0.255 40 0.227 1.405 1 −1.268 0.212
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.564 0.255 40 0.227 1.405 1 −1.268 0.212
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale
- Tests are performed on the log scale
emmeans(mod, specs = emmeans_formula, type = "response") |>
  contrast(interaction = "pairwise", by = NULL, adjust = "none", infer = T)
Condition ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.7 0.488 40 0.171 2.861 1 −0.512 0.612
Condition ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.7 0.488 40 0.171 2.861 1 −0.512 0.612
Condition ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.223 0.773 40 0.341 4.384 1 0.319 0.751
Condition ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.223 0.773 40 0.341 4.384 1 0.319 0.751
Condition ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.747 1.112 40 0.482 6.327 1 0.876 0.386
Condition ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.747 1.112 40 0.482 6.327 1 0.876 0.386
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale
- Tests are performed on the log scale

Boxplot:


3.3 Proportion of Cleaved Caspase 3+ marking (EGL)

3.3.1 Data Exploration

Distribution:

Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 0.008 0.006 0 0.681 0.009 0.002 0.017 0.775 0.919 6
IH 0.014 0.007 0 0.484 0.012 0.004 0.02 −1.127 2.173 4
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 0.008 0.006 0 0.681 0.009 0.002 0.017 0.775 0.919 6
IH 0.014 0.007 0 0.484 0.012 0.004 0.02 −1.127 2.173 4
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 0.008 0.005 0 0.615 0.008 0.001 0.015 −0.225 −0.224 8
IH 0.006 0.005 0 0.866 0.009 0.001 0.015 1.397 2.091 5
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 0.008 0.005 0 0.615 0.008 0.001 0.015 −0.225 −0.224 8
IH 0.006 0.005 0 0.866 0.009 0.001 0.015 1.397 2.091 5
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 0.004 0.003 0 0.683 0.006 0 0.009 0.14 −1.563 11
IH 0.009 0.011 0 1.128 0.009 0 0.033 2.097 5.046 8
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 0.004 0.003 0 0.683 0.006 0 0.009 0.14 −1.563 11
IH 0.009 0.011 0 1.128 0.009 0 0.033 2.097 5.046 8

3.3.2 Models & Diagnostics

Exploring some Generalized Linear (Mixed) model candidates:

Model call:

```{r}
glmmTMB(formula = Prop_C_EGL ~ Condition * Z + (1 | Mouse), data = data, 
    family = beta_family("logit"), REML = TRUE, ziformula = ~0, 
    dispformula = ~1)
```

Performance:

performance::performance(mod)
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
-310.42 -306.05 -296.52 0.42 0.16 0.31 4.70e-03 281.25
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
-310.42 -306.05 -296.52 0.42 0.16 0.31 4.70e-03 281.25

Residuals:

performance::check_model(
  mod, panel = FALSE,
  check = c("pp_check", "qq", "reqq", "linearity", "homogeneity")
)

Predictions:

Simulating data from the model for pseudo “Posterior Predictive” plots.

Simulated data vs observed data:

Simulated statistics vs observed ones:

Potential outliers:

Model call:

```{r}
glmmTMB(formula = Prop_C_EGL ~ Condition * Z + (1 | Mouse), data = data, 
    family = gaussian("log"), REML = TRUE, ziformula = ~0, dispformula = ~1)
```

Performance:

performance::performance(mod)
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
-289.18 -284.81 -275.28 1.00 0.45 1.00 4.46e-03 5.22e-03
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
-289.18 -284.81 -275.28 1.00 0.45 1.00 4.46e-03 5.22e-03

Residuals:

performance::check_model(
  mod, panel = FALSE,
  check = c("pp_check", "qq", "reqq", "linearity", "homogeneity")
)

Predictions:

Simulating data from the model for pseudo “Posterior Predictive” plots.

Simulated data vs observed data:

Simulated statistics vs observed ones:

Potential outliers:

3.3.3 Effects Analysis

```{r}
glmmTMB(formula = Prop_C_EGL ~ Condition * Z + (1 | Mouse), data = data, 
    family = beta_family("logit"), REML = TRUE, ziformula = ~0, 
    dispformula = ~1)
```

3.3.3.1 Coefficients

❖ All effects (Wald):

parameters::parameters(
  mod, component = "conditional", effects = "fixed",
  exponentiate = should_exp(mod), p_adjust = "none", summary = TRUE, digits = 3
)
Parameter Coefficient SE 95% CI z p
(Intercept) 0.008 0.001 (6.03e-03, 0.01) -29.024 < .001
Condition1 0.831 0.132 (0.61, 1.13) -1.166 0.243
Z1 1.350 0.195 (1.02, 1.79) 2.074 0.038 *
Z2 0.958 0.141 (0.72, 1.28) -0.291 0.771
Condition1 * Z1 0.861 0.124 (0.65, 1.14) -1.038 0.299
Condition1 * Z2 1.256 0.185 (0.94, 1.68) 1.549 0.121
Model: Prop_C_EGL ~ Condition * Z (42 Observations)
Parameter Coefficient SE 95% CI z p
(Intercept) 0.008 0.001 (6.03e-03, 0.01) -29.024 < .001
Condition1 0.831 0.132 (0.61, 1.13) -1.166 0.243
Z1 1.350 0.195 (1.02, 1.79) 2.074 0.038 *
Z2 0.958 0.141 (0.72, 1.28) -0.291 0.771
Condition1 * Z1 0.861 0.124 (0.65, 1.14) -1.038 0.299
Condition1 * Z2 1.256 0.185 (0.94, 1.68) 1.549 0.121
Model: Prop_C_EGL ~ Condition * Z (42 Observations)

❖ Main effects (Wald Chi-Square):

car::Anova(mod, type = 3)
term statistic df p.value
Condition 1.36 1 0.240
Z 5.60 2 0.060
Condition:Z 2.43 2 0.300
term statistic df p.value
Condition 1.36 1 0.240
Z 5.60 2 0.060
Condition:Z 2.43 2 0.300

❖ Main effects (Likelihood Ratio Test):

LRT(mod, pred = "Condition")
model df aic bic log_lik deviance chisq chi_df pr_chisq
mod_reduced 5 -325.43 -316.74 167.71 -335.43
mod_full 8 -323.54 -309.63 169.77 -339.54 4.11 3 0.250
model df aic bic log_lik deviance chisq chi_df pr_chisq
mod_reduced 5 -325.43 -316.74 167.71 -335.43
mod_full 8 -323.54 -309.63 169.77 -339.54 4.11 3 0.250
Important

Our LRT() method removes the predictor plus all its interactions

3.3.3.2 Marginal Effects

Marginal means & Contrasts for each predictor:

Marginal Means:

emmeans(mod, specs = pred, type = "response")
Condition response SE df lower.CL upper.CL
N 0.007 0.002 40 0.004 0.011
IH 0.01 0.002 40 0.006 0.016
Condition response SE df lower.CL upper.CL
N 0.007 0.002 40 0.004 0.011
IH 0.01 0.002 40 0.006 0.016
- Results are averaged over the levels of: Z
- Confidence level used: 0.95
- Intervals are back-transformed from the logit scale

Contrasts:

emmeans(mod, specs = pred, type = "response") |> 
  contrast(method = "pairwise", adjust = "none", infer = TRUE)
contrast odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.691 0.219 40 0.364 1.311 1 −1.166 0.250
contrast odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.691 0.219 40 0.364 1.311 1 −1.166 0.250
- Results are averaged over the levels of: Z
- Confidence level used: 0.95
- Intervals are back-transformed from the log odds ratio scale
- Tests are performed on the log odds ratio scale

Boxplot:

Marginal Means:

emmeans(mod, specs = pred, type = "response")
Z response SE df lower.CL upper.CL
Ant 0.011 0.002 40 0.007 0.017
Med 0.008 0.002 40 0.005 0.012
Post 0.006 0.001 40 0.004 0.01
Z response SE df lower.CL upper.CL
Ant 0.011 0.002 40 0.007 0.017
Med 0.008 0.002 40 0.005 0.012
Post 0.006 0.001 40 0.004 0.01
- Results are averaged over the levels of: Condition
- Confidence level used: 0.95
- Intervals are back-transformed from the logit scale

Contrasts:

emmeans(mod, specs = pred, type = "response") |> 
  contrast(method = "pairwise", adjust = "none", infer = TRUE)
contrast odds.ratio SE df lower.CL upper.CL null t.ratio p.value
Ant / Med 1.409 0.367 40 0.833 2.386 1 1.318 0.195
Ant / Post 1.746 0.412 40 1.084 2.812 1 2.365 0.023 *
Med / Post 1.239 0.299 40 0.761 2.017 1 0.889 0.379
contrast odds.ratio SE df lower.CL upper.CL null t.ratio p.value
Ant / Med 1.409 0.367 40 0.833 2.386 1 1.318 0.195
Ant / Post 1.746 0.412 40 1.084 2.812 1 2.365 0.023 *
Med / Post 1.239 0.299 40 0.761 2.017 1 0.889 0.379
- Results are averaged over the levels of: Condition
- Confidence level used: 0.95
- Intervals are back-transformed from the log odds ratio scale
- Tests are performed on the log odds ratio scale

Boxplot:

Marginal Means:

emmeans(mod, specs = emmeans_formula, type = "response")
Condition response SE df lower.CL upper.CL
N 0.008 0.003 40 0.004 0.015
IH 0.015 0.005 40 0.008 0.028
Condition response SE df lower.CL upper.CL
N 0.008 0.003 40 0.004 0.015
IH 0.015 0.005 40 0.008 0.028
Condition response SE df lower.CL upper.CL
N 0.008 0.002 40 0.005 0.014
IH 0.008 0.003 40 0.004 0.015
Condition response SE df lower.CL upper.CL
N 0.008 0.002 40 0.005 0.014
IH 0.008 0.003 40 0.004 0.015
Condition response SE df lower.CL upper.CL
N 0.005 0.001 40 0.003 0.009
IH 0.008 0.002 40 0.005 0.015
Condition response SE df lower.CL upper.CL
N 0.005 0.001 40 0.003 0.009
IH 0.008 0.002 40 0.005 0.015
- Confidence level used: 0.95
- Intervals are back-transformed from the logit scale

Contrasts:

emmeans(mod, specs = emmeans_formula, type = "response") |> 
  contrast(method = "pairwise", adjust = "none", infer = TRUE)
contrast odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.512 0.223 40 0.212 1.236 1 −1.535 0.133
contrast odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.512 0.223 40 0.212 1.236 1 −1.535 0.133
contrast odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.09 0.485 40 0.444 2.678 1 0.194 0.847
contrast odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.09 0.485 40 0.444 2.678 1 0.194 0.847
contrast odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.591 0.232 40 0.268 1.305 1 −1.342 0.187
contrast odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.591 0.232 40 0.268 1.305 1 −1.342 0.187
- Confidence level used: 0.95
- Intervals are back-transformed from the log odds ratio scale
- Tests are performed on the log odds ratio scale
emmeans(mod, specs = emmeans_formula, type = "response") |>
  contrast(interaction = "pairwise", by = NULL, adjust = "none", infer = T)
Condition odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.47 0.244 40 0.165 1.341 1 −1.456 0.153
Condition odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.47 0.244 40 0.165 1.341 1 −1.456 0.153
Condition odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.867 0.407 40 0.335 2.24 1 −0.305 0.762
Condition odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 0.867 0.407 40 0.335 2.24 1 −0.305 0.762
Condition odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.845 0.886 40 0.698 4.872 1 1.274 0.210
Condition odds.ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.845 0.886 40 0.698 4.872 1 1.274 0.210
- Confidence level used: 0.95
- Intervals are back-transformed from the log odds ratio scale
- Tests are performed on the log odds ratio scale

Boxplot: