Releases: py-econometrics/pyfixest
Releases · py-econometrics/pyfixest
PyFixest 0.7.3
- Fixes a bug in the computation of confidence intervals that lead to wildly incorrect CIs.
- Introduces a
confint()
method forFixest
objects.
PyFixest 0.7.0
Potentially Breaking Changes
- for
Fixest
objects, the returned dict containing all estimated models is now calledall_fitted_models
instead ofres_model
.
Internal Refactoring
- This release provides quite a bit of internal refactoring - overall, the code should now be much easier to read & hopefully be more maintainable.
- Additionally, it cleans up the
FixestFormulaParser
class.
New Post-Processing Features
v 0.7.0
- adds a
Fixest.fetch_model()
method to retrieve individual models out of Fixest - adds post estimation routines for objects of type Feols: coef(), se(), confint,tidy(), etc
After estimating multiple models, it is now possible to fetch individual models (objects of type Feols
) from an object of type Fixest
via the fetch_model()
method:
from pyfixest import Fixest
from pyfixest.utils import get_data
import pandas as pd
data = get_data()
fixest = Fixest(data)
fixest.feols('Y ~ X1 | csw(X2,X3)', vcov = 'iid')
mod = fixest.fetch_model(1)
# Model: Y~X1|X2+X3
mod
# <pyfixest.feols.Feols at 0x2da61c41b10>
mod.tidy()
# Estimate Std. Error t value Pr(>|t|) confint_lower confint_upper
#coefnames
# X1 0.03975 0.120714 0.329288 0.741973 -0.03218 0.047319
v0.6.6
v0.6: IV Support
Version 0.6 introduces support for IV estimation via 2SLS.
- Syntax for IV estimation unambiguously follows fixest' syntax: you can specify IV estimation via a formula with
depvar ~ exog.vars | fixed effect vars | endog.var ~ instruments
. If no fixed effects is specified, just drop the second part of the formula. - It is possible to estimate over-identified models, but not possible to estimate models with more than one endogenous variable.
- It is also not (yet) possible to combine IV estimation with multiple estimation syntax.
from pyfixest import Fixest
from pyfixest.utils import get_data
data = get_data()
data.head()
fixest = Fixest(data = data)
fixest.feols("Y ~ 1 | X2 | X1 ~ Z1 + Z2")
v0.5
IV Support
- Includes very basic support for IV estimation with one endogenous variable and one instrument.
- Inference: iid, HC1-3, CRV1.
Syntax for IV:
import pyfixest as pf
import numpy as np
from pyfixest.utils import get_data
data = get_data()
fixest = pf.Fixest(data = data)
fixest.feols("Y~X1 | csw0(X2, X3) | X1 ~ Z1", vcov = {'CRV1':'group_id'})
fixest.summary()
# ###
#
# Model: IV
# Dep. var.: Y
# Inference: {'CRV1': 'group_id'}
# Observations: 1998
#
# Estimate Std. Error t value Pr(>|t|)
# Intercept -3.941293 0.221354 -17.805377 2.442491e-15
# X1 -0.265817 0.261940 -1.014803 3.203217e-01
# ---
# ###
# ...
What's Changed
- add codecov support by @s3alfisc in #69
- update docs + explicitly drop Intercept based on column name by @s3alfisc in #71
- update inference log in vcov method closing #61 by @s3alfisc in #73
- IV Functionality by @s3alfisc in #74
Full Changelog: v0.4.0...v0.5
v0.4.0
- introduces a
ssc()
function to control small sample corrections - by default, the small sample correction defaults for iid, HC1 and CRV1 inference now match
fixest
defaults - defaults for inference when the
vcov
argument is not specified now matchesfixest
as well. Prior, thevcov
argument was required - multiple smaller bug fixes
- implements CRV3 inference with and without fixed effects
- implements wild (cluster) bootstrap inference via
wildboottest
version 0.3.0
Supported Features:
- Basic support for OLS.
- HC and CRV inference
- Multiple estimations via
sw
andcsw
syntax. - Regression interaction via
i()
. - on-the-fly SEs
- tidy, summary, iplot methods
Overview of Features: link