Is there a GLMM package?

There is a mixed-effects model package and a generalized linear model package. But is there a package for Generalized linear mixed model (something like R’s glmm package)?

1 Like

I am also looking for such package, also I am looking for packages that can handle multi-way clustered standard errors (like the R package lfe).

In addition, I am looking MIDAS regression julia packages.

1 Like

I have an econometrics package which has random effects (Swamy-Arora harmonic mean variant with 2SLS support) for panel data as one of the estimators. I also have a few for within transformation (multi-way fixed effects - Stata reghdfe, R lfe, or Julia FixedEffectModels) and multi-way clustering à la Cameron Miller (matches Correia reghdfe which takes into account singletons, but uses a different finite sample adjustment for multidimensional). I am just waiting for 0.7 to get released and the JuliaData / JuliaStats be upgraded to publish those. However, if you need them now, you can look over the code and copy-paste it. https://github.com/JuliaEconometrics: look at EconUtils for some utilities and VarianceCovarianceEstimators for multiway clustering.

3 Likes

Sounds really cool.

I think it would be great if there could be a single “formal” package for GLMM. As the functionality of packages moves further in to the fringe of what is commonly known and accepted (such as GLMM and how to compute them) there is a tendency for multiple implementations to pop up. I would rather not see a bunch of implementations for GLMMs. R had glmm and lmer I think, and two is better than 20, but 1 is better than 2, if possible.

Any thoughts about that?

1 Like

There are quite a lot of packages popping up every month, but some will get more popular and some will not. Event for the same task, there are multiple implementations. Overtime, some implementations will become mainstream and the others will be forgotten. For example, iPlots used to be quite popular in R, but after ggplot2 and lattice came up, it gradually got forgotten. This also applies to Eigen3, Armadillo, etc…

However, there is no way we can predict which implementation will become mainstream, so I guess it is better to have more implementations for the same task.

I am working on getting a cohesive framework for avoiding multiplicity. For example,

And a few more for penalized regression (a few variants of Ridge, LASSO, LARS, etc.)

The idea is to make backends and frontends. For example, CovarianceMatrices only works if using GLM. Each package has the variance covariance estimators computed (some more than others) rather than just one package. The VarianceCovarianceEstimators attempts to allow other packages to use it in the backend to avoid code multiplicity. For Bayesian Regression, GLM relies on IRLS which doesn’t allow for Maximum a Posterior (MAP) so that framework might have to be different. The within transformation is part of EconUtils rather than one package as FixedEffectsModels so various packages can use it (less code duplication). The front-ends are probably going to left open to tailor it to user-specific needs (econometrics vs stats, etc.).

More to the issue at hand, I would say the first step would be to finish up improving GLM (it was one of the very first packages in the ecosystem). For example, adding multinomial and ordinal logistic regression or Ridge as well. Then using that framework to develop GLMM. An alternative would be to expand MixedModels which uses GLM as the backend.

4 Likes

Awesome, sounds like you people got it covered. Thanks a ton!!! Cool :slight_smile:

Doug Bates’ MixedModels.jl package fits GLMMs (it’s roughly equivalent to R’s lme4, which in my experience is the standard package for basic GLMMs in R these days):

http://dmbates.github.io/MixedModels.jl/latest/constructors.html#Fitting-generalized-linear-mixed-models-1

4 Likes

Yeah, surprised that there is no codes for ordinal logistic regression

It will be really appreciated !

I am only missing a reference on how to estimate the cut-offs. Once I learn how to estimate the intercept terms it should be all set.

1 Like