This is my best time/age model:
- Code: Select all
ms_model_time_age <- mark(ms_proc, ms_ddl,
model.parameters = list(
S = list(formula = ~-1 +
juv:time +
youngA:stratum +
olderA:stratum),
p = list(formula = ~age1:time + age2plus:stratum:time),
Psi = list(formula = ~-1 + stratum:tostratum:ageclass4:period)))
The Issue
When testing density effects on juvenile survival, I got completely opposite results with scaled vs. unscaled variables:
1. Using raw density ("monitored_pairs", range: 6-143 pairs):
- Code: Select all
ms_model_dens <- mark(ms_proc, ms_ddl,
model.parameters = list(
S = list(formula = ~-1 +
juv:monitored_pairs +
youngA:stratum +
olderA:stratum),
p = list(formula = ~age1:time + age2plus:stratum:time),
Psi = list(formula = ~-1 + stratum:tostratum:ageclass4:period)))
Model output showing a positive density dependence:
Parameter Beta SE 95% CI
S:juv:monitored_pair 0.0080300 0.0008769 0.0063112 to 0.0097487
2. Using scaled density via scale() function in R and then merging to the ddl:
- Code: Select all
dd.data$s_monitored_pairs = scale(dd.data$monitored_pairs)
ms_ddl$S=merge_design.covariates(ms_ddl$S,dd.data)
- Code: Select all
ms_model_dens <- mark(ms_proc, ms_ddl,
model.parameters = list(
S = list(formula = ~-1 +
juv:s_monitored_pairs +
youngA:stratum +
olderA:stratum),
p = list(formula = ~age1:time + age2plus:stratum:time),
Psi = list(formula = ~-1 + stratum:tostratum:ageclass4:period)))
Model output showing a negative density dependence:
Parameter Beta SE 95% CI
S:juv:s_monitored_pa -0.1202963 0.0501466 -0.2185837 to -0.0220090
Has anyone encountered similar sign-flipping when scaling variables in multi-state models?