16  Teens

Data

Description

Variable Description
Mouse

Mouse unique identifier

Condition

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

Grip_Strength

Grip Strength (g)

Variable Description
Mouse

Mouse unique identifier

Condition

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

Grip_Strength

Grip Strength (g)

Correlations

16.1 Grip Strength

16.1.1 Data Exploration

Distribution:

Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 0.485 0.121 0.015 0.249 0.215 0.3 0.64 −0.394 −1.46 12
IH 0.361 0.097 0.009 0.269 0.155 0.22 0.53 0.095 −0.268 9
Condition Mean SD Variance CoV IQR Min Max Skewness Kurtosis n
N 0.485 0.121 0.015 0.249 0.215 0.3 0.64 −0.394 −1.46 12
IH 0.361 0.097 0.009 0.269 0.155 0.22 0.53 0.095 −0.268 9

16.1.2 Models & Diagnostics

Exploring some Generalized Linear (Mixed) model candidates:

Model call:

```{r}
glmmTMB(formula = Grip_Strength ~ Condition + (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
-20.19 -17.69 -16.01 0.26 0.23 0.04 0.10 0.26
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
-20.19 -17.69 -16.01 0.26 0.23 0.04 0.10 0.26

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 = Grip_Strength ~ Condition + (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
-21.17 -18.67 -16.99 0.78 0.49 0.57 0.09 0.10
AIC AICc BIC R2_conditional R2_marginal ICC RMSE Sigma
-21.17 -18.67 -16.99 0.78 0.49 0.57 0.09 0.10

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:

16.1.3 Effects Analysis

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

16.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) 0.484 0.040 (0.41, 0.57) -8.863 < .001
Condition2 0.746 0.092 (0.59, 0.95) -2.369 0.018 *
Model: Grip_Strength ~ Condition (21 Observations)
Parameter Coefficient SE 95% CI z p
(Intercept) 0.484 0.040 (0.41, 0.57) -8.863 < .001
Condition2 0.746 0.092 (0.59, 0.95) -2.369 0.018 *
Model: Grip_Strength ~ Condition (21 Observations)

❖ Main effects (Wald Chi-Square):

car::Anova(mod, type = 3)
term statistic df p.value
Condition 5.61 1 0.020 *
term statistic df p.value
Condition 5.61 1 0.020 *

❖ Main effects (Likelihood Ratio Test):

LRT(mod, pred = "Condition")
model df aic bic log_lik deviance chisq chi_df pr_chisq
mod_reduced 3 -23.51 -20.38 14.76 -29.51
mod_full 4 -26.56 -22.38 17.28 -34.56 5.04 1 0.020 *
model df aic bic log_lik deviance chisq chi_df pr_chisq
mod_reduced 3 -23.51 -20.38 14.76 -29.51
mod_full 4 -26.56 -22.38 17.28 -34.56 5.04 1 0.020 *
Important

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

16.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 0.484 0.04 19 0.407 0.574
IH 0.361 0.033 19 0.297 0.438
Condition response SE df lower.CL upper.CL
N 0.484 0.04 19 0.407 0.574
IH 0.361 0.033 19 0.297 0.438
- 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.34 0.165 19 1.035 1.735 1 2.369 0.029 *
contrast ratio SE df lower.CL upper.CL null t.ratio p.value
N / IH 1.34 0.165 19 1.035 1.735 1 2.369 0.029 *
- Confidence level used: 0.95
- Intervals are back-transformed from the log scale
- Tests are performed on the log scale

Boxplot: