-
Notifications
You must be signed in to change notification settings - Fork 41
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
GLM Support #758
GLM Support #758
Conversation
Status: implementations seem to work for logit and probit without fixed effects (coefficients match, SEs is another story): import statsmodels.api as sm
import pyfixest as pf
spector_data = sm.datasets.spector.load_pandas()
spector_data.exog = sm.add_constant(spector_data.exog)
# fit via statsmodels
logit_mod = sm.Logit(spector_data.endog, spector_data.exog)
probit_mod = sm.Probit(spector_data.endog, spector_data.exog)
logit_res = logit_mod.fit()
probit_res = probit_mod.fit()
logit_params = logit_res.params
probit_params = probit_res.params
print(logit_params)
# Iterations 6
# const -13.021347
# GPA 2.826113
# TUCE 0.095158
# PSI 2.378688
# print(probit_params)
# const -7.452320
# GPA 1.625810
# TUCE 0.051729
# PSI 1.426332
# fit via pyfixest
fit_logit = pf.feglm("GRADE ~ GPA + TUCE + PSI", data = spector_data.data, family = "logit")
fit_probit = pf.feglm("GRADE ~ GPA + TUCE + PSI", data = spector_data.data, family = "probit")
pf.etable([fit_logit, fit_probit], digits = 6) |
wait you closed this without merging? is this in a different branch now? |
Yes it's here: #763. Branch was named "GLM" but I checked out "glm" at some point ...🤦♂️ |
Thanks! Gonna test it Clogit would be great next.... |
Cool, thanks @gbekes! If you could choose, would you rather start with the |
Yes, many FEs make more sense to add next. |
This PR
Feglm
class from which different type of GLM families can inherit.pf.feglm(, family = "logit")
front end to call these functions.Other PR
TODO:
Fepois.get_fit()
method for details.fixest::feglm()
Goal:
Should all be doable before the year ends (hopefully!)
Fyi @leostimpfle @apoorvalal @gbekes.