-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
integrate changes from StatsModels 0.7 (upcoming release) #664
Conversation
I've got most of the easy stuff sorted out now. The remaining issue is how implicit intercept/full-rank promotion is handled in the ranef terms. Our decision to :just: copy/paste the intercept handling stuff from statsmodels is coming back to bite now: the lhs of a ranef term like My current best idea is to use some kinda wrapper context like The other (hackier) thing to do would be to would be to use a "dummy schema" like |
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #664 +/- ##
=======================================
Coverage 96.27% 96.28%
=======================================
Files 29 29
Lines 2740 2747 +7
=======================================
+ Hits 2638 2645 +7
Misses 102 102
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report in Codecov by Sentry. |
this is ready for review with the caveat that I have no idea why the documenter build failed and haven't looked into it other than looking at the logs |
@kleinschmidt This is what's failing (it's a non sense model but it was chosen to show off the formula syntax on something quick to fit) using MixedModels
sleepstudy = MixedModels.dataset(:sleepstudy)
fit(MixedModel, @formula(reaction ~ 1 + days + (1|subj) + zerocorr(days|subj)), sleepstudy,
contrasts = Dict(:days => DummyCoding())) |
hmmmmmmmm that makes me think there may be an actual error there, it looks like |
AH I think I know what's happened here 😞 the hacky julia> ff = @formula(reaction ~ 1 + days + (1|subj) + zerocorr(days|subj))
FormulaTerm
Response:
reaction(unknown)
Predictors:
1
days(unknown)
(days,subj)->zerocorr(days | subj)
(subj)->1 | subj I think we can work around this by adding a method for |
WIP.The major thing that needs to be addressed is howFunctionTerm
s are represented (JuliaStats/StatsModels.jl#183).Don't merge until
hasintercept
StatsModels.jl#275FullRank
schemas as well StatsModels.jl#274closes #672