AnovaFixedEffectModels
using AnovaFixedEffectModelsAnovaFixedEffectModels.jl supports FixedEffectModels.
lfe is as same as reg, but the order of arguments is closer to other modeling packages.
fem1 = lfe(@formula(gpa ~ fe(student) + occasion + job), gpa)
aovf = anova(fem1)Analysis of Variance
Type 1 test / F test
gpa ~ :(fe(student)) + occasion + job
Table:
──────────────────────────────────────────────────────────
DOF Exp.SS Mean Square F value Pr(>|F|)
──────────────────────────────────────────────────────────
occasion 1 39.56 39.56 718.3393 <1e-99
job 1 3.0698 3.0698 55.7420 <1e-12
(Residuals) 998 54.96 0.0551
──────────────────────────────────────────────────────────Comparing between FixedEffectModelss and LinearModel is also available.
fems = nestedmodels(FixedEffectModel, @formula(gpa ~ fe(student) + occasion + job), gpa)
aovf = anova(fems)Analysis of Variance
Type 1 test / F test
Model 1: gpa ~ 0 + :(fe(student))
Model 2: gpa ~ 0 + occasion + :(fe(student))
Model 3: gpa ~ :(fe(student)) + occasion + job
Table:
─────────────────────────────────────────────────────────────────────────────────────────────────
DOF ΔDOF Res.DOF R² ΔR² R²_within ΔR²_within Res.SS Exp.SS F value Pr(>|F|)
─────────────────────────────────────────────────────────────────────────────────────────────────
1 200 998 0.4731 <1e-14 97.59
2 201 1 998 0.6867 0.2136 0.4054 0.4054 58.03 39.56 718.3393 <1e-99
3 202 1 998 0.7033 0.0166 0.4368 0.0315 54.96 3.0698 55.7420 <1e-12
─────────────────────────────────────────────────────────────────────────────────────────────────In this case, LinearModel has to be the simplest model.
aovf = anova(lm(@formula(gpa ~ occasion + job), gpa), lfe(@formula(gpa ~ fe(student) + occasion + job), gpa))Analysis of Variance
Type 1 test / F test
Model 1: gpa ~ 1 + occasion + job
Model 2: gpa ~ :(fe(student)) + occasion + job
Table:
─────────────────────────────────────────────────────────────
DOF ΔDOF Res.DOF Deviance ΔDeviance F value Pr(>|F|)
─────────────────────────────────────────────────────────────
1 3 1197 124.99
2 202 199 998 54.96 70.03 6.3905 <1e-87
─────────────────────────────────────────────────────────────Likelihood-ratio test is available for nested models.
fems = nestedmodels(FixedEffectModel, @formula(gpa ~ fe(student) + occasion + job), gpa)
anova(LRT, fems)Analysis of Variance
Type 1 test / Likelihood-ratio test
Model 1: gpa ~ 0 + :(fe(student))
Model 2: gpa ~ 0 + occasion + :(fe(student))
Model 3: gpa ~ :(fe(student)) + occasion + job
Table:
────────────────────────────────────────────────────
DOF ΔDOF Res.DOF Deviance χ² Pr(>|χ²|)
────────────────────────────────────────────────────
1 200 1000 394.29
2 201 1 999 -229.48 623.7685 <1e-99
3 202 1 998 -294.70 65.2196 <1e-15
────────────────────────────────────────────────────