From 3455684a7d86cb97fb61030264123b3a21d1095e Mon Sep 17 00:00:00 2001 From: Alexander Fischer Date: Mon, 23 Jun 2025 12:56:15 +0200 Subject: [PATCH 1/5] add citation to readme --- CITATION.cff | 19 ++ README.html | 806 +++++++++++++++++++++++++++++++++++++++++++++++ README.md | 22 +- docs/pyfixest.md | 14 + 4 files changed, 860 insertions(+), 1 deletion(-) create mode 100644 CITATION.cff create mode 100644 README.html diff --git a/CITATION.cff b/CITATION.cff new file mode 100644 index 000000000..73bd45ba6 --- /dev/null +++ b/CITATION.cff @@ -0,0 +1,19 @@ +cff-version: 1.2.0 +message: "If you use pyfixest in your research, please cite it as below." +title: "pyfixest: Fast high-dimensional fixed effect estimation in Python" +type: software +authors: + - name: "The PyFixest Authors" + +repository-code: 'https://github.com/py-econometrics/pyfixest' +url: 'https://py-econometrics.github.io/pyfixest/pyfixest.html' +abstract: "A Python package for fast high-dimensional fixed effect estimation, inspired by the syntax of the popular R package `fixest`. It provides a familiar and intuitive interface for economists and other social scientists to estimate complex regression models with multiple fixed effects efficiently." +keywords: + - 'fixed effects' + - 'panel data' + - 'econometrics' + - 'statistics' + - 'causal inference' + - 'regression' + - 'python' +license: MIT diff --git a/README.html b/README.html new file mode 100644 index 000000000..e865e81ab --- /dev/null +++ b/README.html @@ -0,0 +1,806 @@ + + + + + + + + + + + + + +README + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +

+
+

PyFixest: Fast High-Dimensional Fixed Effects Regression in +Python

+

License Python Versions PyPI -Version Project Chat image Known Bugs File an Issue All Contributors Downloads Downloads Ruff Pixi Badge Donate | GiveDirectly PyPI PyPI - Python Version Citation

+

PyFixest is a Python implementation of the formidable fixest package for fast +high-dimensional fixed effects regression.

+

The package aims to mimic fixest's defaults as closely +as Python allows: if you know fixest well, the goal is that +you won’t have to read the docs to get started! In particular, this +means that all of fixest's defaults are mirrored by +PyFixest.

+

Nevertheless, for a quick introduction, you can take a look at the documentation +or the regression chapter of Arthur Turrell’s book on Coding +for Economists.

+

For questions on PyFixest, head on over to our github +discussions, or (more informally) join our Discord server.

+
+

Support PyFixest

+

If you enjoy using PyFixest, please consider donating to +GiveDirectly and +dedicating your donation to pyfixest.dev@gmail.com. You can +also leave a message through the donation form - your support and +encouragement mean a lot to the developers!

+
+
+

Features

+
    +
  • OLS, WLS and IV +Regression with Fixed-Effects Demeaning via Frisch-Waugh-Lovell
  • +
  • Poisson Regression following the pplmhdfe +algorithm
  • +
  • Probit, Logit and Gaussian Family GLMs (currently +without fixed effects demeaning, this is WIP)
  • +
  • Quantile Regression using an Interior Point +Solver
  • +
  • Multiple Estimation Syntax
  • +
  • Several Robust and Cluster Robust +Variance-Covariance Estimators
  • +
  • Wild Cluster Bootstrap Inference (via wildboottest)
  • +
  • Difference-in-Differences Estimators: +
  • +
  • Multiple Hypothesis Corrections following the +Procedure by Romano +and Wolf and Simultaneous Confidence Intervals +using a Multiplier Bootstrap
  • +
  • Fast Randomization Inference as in the ritest Stata package
  • +
  • The Causal Cluster Variance Estimator (CCV) +following Abadie +et al.
  • +
  • Regression Decomposition following Gelbach +(2016)
  • +
  • Publication-ready tables with Great +Tables or LaTex booktabs
  • +
+
+
+

Installation

+

You can install the release version from PyPI by +running

+
# inside an active virtual environment
+python -m pip install pyfixest
+

or the development version from github by running

+
python -m pip install git+https://github.com/py-econometrics/pyfixest
+

For visualization features using the lets-plot backend, install the +optional dependency:

+
python -m pip install pyfixest[plots]
+

Note that matplotlib is included by default, so you can always use +the matplotlib backend for plotting even without installing the optional +lets-plot dependency.

+
+
+

Benchmarks

+

All benchmarks follow the fixest +benchmarks. All non-pyfixest timings are taken from the +fixest benchmarks.

+

+
+
+

Quickstart

+
import pyfixest as pf
+
+data = pf.get_data()
+pf.feols("Y ~ X1 | f1 + f2", data=data).summary()
+
###
+
+Estimation:  OLS
+Dep. var.: Y, Fixed effects: f1+f2
+Inference:  CRV1
+Observations:  997
+
+| Coefficient   |   Estimate |   Std. Error |   t value |   Pr(>|t|) |   2.5% |   97.5% |
+|:--------------|-----------:|-------------:|----------:|-----------:|-------:|--------:|
+| X1            |     -0.919 |        0.065 |   -14.057 |      0.000 | -1.053 |  -0.786 |
+---
+RMSE: 1.441   R2: 0.609   R2 Within: 0.2
+
+

Multiple Estimation

+

You can estimate multiple models at once by using multiple +estimation syntax:

+
# OLS Estimation: estimate multiple models at once
+fit = pf.feols("Y + Y2 ~X1 | csw0(f1, f2)", data = data, vcov = {'CRV1':'group_id'})
+# Print the results
+fit.etable()
+
                           est1               est2               est3               est4               est5               est6
+------------  -----------------  -----------------  -----------------  -----------------  -----------------  -----------------
+depvar                        Y                 Y2                  Y                 Y2                  Y                 Y2
+------------------------------------------------------------------------------------------------------------------------------
+Intercept      0.919*** (0.121)   1.064*** (0.232)
+X1            -1.000*** (0.117)  -1.322*** (0.211)  -0.949*** (0.087)  -1.266*** (0.212)  -0.919*** (0.069)  -1.228*** (0.194)
+------------------------------------------------------------------------------------------------------------------------------
+f2                            -                  -                  -                  -                  x                  x
+f1                            -                  -                  x                  x                  x                  x
+------------------------------------------------------------------------------------------------------------------------------
+R2                        0.123              0.037              0.437              0.115              0.609              0.168
+S.E. type          by: group_id       by: group_id       by: group_id       by: group_id       by: group_id       by: group_id
+Observations                998                999                997                998                997                998
+------------------------------------------------------------------------------------------------------------------------------
+Significance levels: * p < 0.05, ** p < 0.01, *** p < 0.001
+Format of coefficient cell:
+Coefficient (Std. Error)
+
+
+

Adjust Standard Errors “on-the-fly”

+

Standard Errors can be adjusted after estimation, “on-the-fly”:

+
fit1 = fit.fetch_model(0)
+fit1.vcov("hetero").summary()
+
Model:  Y~X1
+###
+
+Estimation:  OLS
+Dep. var.: Y
+Inference:  hetero
+Observations:  998
+
+| Coefficient   |   Estimate |   Std. Error |   t value |   Pr(>|t|) |   2.5% |   97.5% |
+|:--------------|-----------:|-------------:|----------:|-----------:|-------:|--------:|
+| Intercept     |      0.919 |        0.112 |     8.223 |      0.000 |  0.699 |   1.138 |
+| X1            |     -1.000 |        0.082 |   -12.134 |      0.000 | -1.162 |  -0.838 |
+---
+RMSE: 2.158   R2: 0.123
+
+
+

Poisson Regression via fepois()

+

You can estimate Poisson Regressions via the fepois() +function:

+
poisson_data = pf.get_data(model = "Fepois")
+pf.fepois("Y ~ X1 + X2 | f1 + f2", data = poisson_data).summary()
+
###
+
+Estimation:  Poisson
+Dep. var.: Y, Fixed effects: f1+f2
+Inference:  CRV1
+Observations:  997
+
+| Coefficient   |   Estimate |   Std. Error |   t value |   Pr(>|t|) |   2.5% |   97.5% |
+|:--------------|-----------:|-------------:|----------:|-----------:|-------:|--------:|
+| X1            |     -0.007 |        0.035 |    -0.190 |      0.850 | -0.075 |   0.062 |
+| X2            |     -0.015 |        0.010 |    -1.449 |      0.147 | -0.035 |   0.005 |
+---
+Deviance: 1068.169
+
+
+

IV Estimation via three-part formulas

+

Last, PyFixest also supports IV estimation via three +part formula syntax:

+
fit_iv = pf.feols("Y ~ 1 | f1 | X1 ~ Z1", data = data)
+fit_iv.summary()
+
###
+
+Estimation:  IV
+Dep. var.: Y, Fixed effects: f1
+Inference:  CRV1
+Observations:  997
+
+| Coefficient   |   Estimate |   Std. Error |   t value |   Pr(>|t|) |   2.5% |   97.5% |
+|:--------------|-----------:|-------------:|----------:|-----------:|-------:|--------:|
+| X1            |     -1.025 |        0.115 |    -8.930 |      0.000 | -1.259 |  -0.790 |
+---
+
+
+
+

Call for Contributions

+

Thanks for showing interest in contributing to pyfixest! +We appreciate all contributions and constructive feedback, whether that +be reporting bugs, requesting new features, or suggesting improvements +to documentation.

+

If you’d like to get involved, but are not yet sure how, please feel +free to send us an email. Some familiarity +with either Python or econometrics will help, but you really don’t need +to be a numpy core developer or have published in Econometrica +=) We’d be more than happy to invest time to help you get started!

+
+ +
+

Acknowledgements

+

We thank all institutions that have funded or supported work on +PyFixest!

+

+

We are immensely grateful to the following individuals for their +invaluable feedback and contributions, which have greatly improved +pyfixest:

+
+
+

How to Cite

+

If you want to cite PyFixest, you can use the following BibTeX +entry:

+
@software{pyfixest,
+  author  = {{The PyFixest Authors}},
+  title   = {{pyfixest: Fast high-dimensional fixed effect estimation in Python}},
+  year    = {2025},
+  url     = {https://github.com/py-econometrics/pyfixest}
+}
+
+
+

License

+
+
+ + + + +
+ + + + + + + + + + + + + + + diff --git a/README.md b/README.md index 16fa87dbc..919ed4840 100644 --- a/README.md +++ b/README.md @@ -15,6 +15,9 @@ [![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff) [![Pixi Badge][pixi-badge]][pixi-url] [![Donate | GiveDirectly](https://img.shields.io/static/v1?label=GiveDirectly&message=Donate&color=blue&style=flat-square)](https://github.com/py-econometrics/pyfixest?tab=readme-ov-file#support-pyfixest) +[![PyPI](https://img.shields.io/pypi/v/pyfixest)](https://pypi.org/project/pyfixest) +[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pyfixest)](https://pypi.org/project/pyfixest/) +[![Citation](https://img.shields.io/badge/Cite%20as-PyFixest-blue)](https://github.com/py-econometrics/pyfixest?tab=readme-ov-file#how-to-cite) [pixi-badge]:https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/prefix-dev/pixi/main/assets/badge/v0.json&style=flat-square [pixi-url]: https://pixi.sh @@ -24,7 +27,7 @@ `PyFixest` is a Python implementation of the formidable [fixest](https://github.com/lrberge/fixest) package for fast high-dimensional fixed effects regression. -The package aims to mimic `fixest` syntax and functionality as closely as Python allows: if you know `fixest` well, the goal is that you won't have to read the docs to get started! In particular, this means that all of `fixest's` defaults are mirrored by `PyFixest`. +The package aims to mimic `fixest's` defaults as closely as Python allows: if you know `fixest` well, the goal is that you won't have to read the docs to get started! In particular, this means that all of `fixest's` defaults are mirrored by `PyFixest`. Nevertheless, for a quick introduction, you can take a look at the [documentation](https://py-econometrics.github.io/pyfixest/pyfixest.html) or the regression chapter of [Arthur Turrell's](https://github.com/aeturrell) book on [Coding for Economists](https://aeturrell.github.io/coding-for-economists/econmt-regression.html#imports). @@ -306,3 +309,20 @@ This project follows the [all-contributors](https://github.com/all-contributors/ We thank all institutions that have funded or supported work on PyFixest! + +We are immensely grateful to the following individuals for their invaluable feedback and contributions, which have greatly improved `pyfixest`: + +## How to Cite + +If you want to cite PyFixest, you can use the following BibTeX entry: + +```bibtex +@software{pyfixest, + author = {{The PyFixest Authors}}, + title = {{pyfixest: Fast high-dimensional fixed effect estimation in Python}}, + year = {2025}, + url = {https://github.com/py-econometrics/pyfixest} +} +``` + +## License diff --git a/docs/pyfixest.md b/docs/pyfixest.md index de7b5b400..5edfafd51 100644 --- a/docs/pyfixest.md +++ b/docs/pyfixest.md @@ -257,3 +257,17 @@ This project follows the [all-contributors](https://github.com/all-contributors/ We thank all institutions that have funded or supported work on PyFixest! + + +## How to Cite + +If you want to cite PyFixest, you can use the following BibTeX entry: + +```bibtex +@software{pyfixest, + author = {{The PyFixest Authors}}, + title = {{pyfixest: Fast high-dimensional fixed effect estimation in Python}}, + year = {2025}, + url = {https://github.com/py-econometrics/pyfixest} +} +``` From f82d276d965512a66cbaf42f6c21fd5507777704 Mon Sep 17 00:00:00 2001 From: Alexander Fischer Date: Mon, 23 Jun 2025 12:58:53 +0200 Subject: [PATCH 2/5] delete and untrack readme.html --- README.html | 806 ---------------------------------------------------- 1 file changed, 806 deletions(-) delete mode 100644 README.html diff --git a/README.html b/README.html deleted file mode 100644 index e865e81ab..000000000 --- a/README.html +++ /dev/null @@ -1,806 +0,0 @@ - - - - - - - - - - - - - -README - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - -

-
-

PyFixest: Fast High-Dimensional Fixed Effects Regression in -Python

-

License Python Versions PyPI -Version Project Chat image Known Bugs File an Issue All Contributors Downloads Downloads Ruff Pixi Badge Donate | GiveDirectly PyPI PyPI - Python Version Citation

-

PyFixest is a Python implementation of the formidable fixest package for fast -high-dimensional fixed effects regression.

-

The package aims to mimic fixest's defaults as closely -as Python allows: if you know fixest well, the goal is that -you won’t have to read the docs to get started! In particular, this -means that all of fixest's defaults are mirrored by -PyFixest.

-

Nevertheless, for a quick introduction, you can take a look at the documentation -or the regression chapter of Arthur Turrell’s book on Coding -for Economists.

-

For questions on PyFixest, head on over to our github -discussions, or (more informally) join our Discord server.

-
-

Support PyFixest

-

If you enjoy using PyFixest, please consider donating to -GiveDirectly and -dedicating your donation to pyfixest.dev@gmail.com. You can -also leave a message through the donation form - your support and -encouragement mean a lot to the developers!

-
-
-

Features

-
    -
  • OLS, WLS and IV -Regression with Fixed-Effects Demeaning via Frisch-Waugh-Lovell
  • -
  • Poisson Regression following the pplmhdfe -algorithm
  • -
  • Probit, Logit and Gaussian Family GLMs (currently -without fixed effects demeaning, this is WIP)
  • -
  • Quantile Regression using an Interior Point -Solver
  • -
  • Multiple Estimation Syntax
  • -
  • Several Robust and Cluster Robust -Variance-Covariance Estimators
  • -
  • Wild Cluster Bootstrap Inference (via wildboottest)
  • -
  • Difference-in-Differences Estimators: -
  • -
  • Multiple Hypothesis Corrections following the -Procedure by Romano -and Wolf and Simultaneous Confidence Intervals -using a Multiplier Bootstrap
  • -
  • Fast Randomization Inference as in the ritest Stata package
  • -
  • The Causal Cluster Variance Estimator (CCV) -following Abadie -et al.
  • -
  • Regression Decomposition following Gelbach -(2016)
  • -
  • Publication-ready tables with Great -Tables or LaTex booktabs
  • -
-
-
-

Installation

-

You can install the release version from PyPI by -running

-
# inside an active virtual environment
-python -m pip install pyfixest
-

or the development version from github by running

-
python -m pip install git+https://github.com/py-econometrics/pyfixest
-

For visualization features using the lets-plot backend, install the -optional dependency:

-
python -m pip install pyfixest[plots]
-

Note that matplotlib is included by default, so you can always use -the matplotlib backend for plotting even without installing the optional -lets-plot dependency.

-
-
-

Benchmarks

-

All benchmarks follow the fixest -benchmarks. All non-pyfixest timings are taken from the -fixest benchmarks.

-

-
-
-

Quickstart

-
import pyfixest as pf
-
-data = pf.get_data()
-pf.feols("Y ~ X1 | f1 + f2", data=data).summary()
-
###
-
-Estimation:  OLS
-Dep. var.: Y, Fixed effects: f1+f2
-Inference:  CRV1
-Observations:  997
-
-| Coefficient   |   Estimate |   Std. Error |   t value |   Pr(>|t|) |   2.5% |   97.5% |
-|:--------------|-----------:|-------------:|----------:|-----------:|-------:|--------:|
-| X1            |     -0.919 |        0.065 |   -14.057 |      0.000 | -1.053 |  -0.786 |
----
-RMSE: 1.441   R2: 0.609   R2 Within: 0.2
-
-

Multiple Estimation

-

You can estimate multiple models at once by using multiple -estimation syntax:

-
# OLS Estimation: estimate multiple models at once
-fit = pf.feols("Y + Y2 ~X1 | csw0(f1, f2)", data = data, vcov = {'CRV1':'group_id'})
-# Print the results
-fit.etable()
-
                           est1               est2               est3               est4               est5               est6
-------------  -----------------  -----------------  -----------------  -----------------  -----------------  -----------------
-depvar                        Y                 Y2                  Y                 Y2                  Y                 Y2
-------------------------------------------------------------------------------------------------------------------------------
-Intercept      0.919*** (0.121)   1.064*** (0.232)
-X1            -1.000*** (0.117)  -1.322*** (0.211)  -0.949*** (0.087)  -1.266*** (0.212)  -0.919*** (0.069)  -1.228*** (0.194)
-------------------------------------------------------------------------------------------------------------------------------
-f2                            -                  -                  -                  -                  x                  x
-f1                            -                  -                  x                  x                  x                  x
-------------------------------------------------------------------------------------------------------------------------------
-R2                        0.123              0.037              0.437              0.115              0.609              0.168
-S.E. type          by: group_id       by: group_id       by: group_id       by: group_id       by: group_id       by: group_id
-Observations                998                999                997                998                997                998
-------------------------------------------------------------------------------------------------------------------------------
-Significance levels: * p < 0.05, ** p < 0.01, *** p < 0.001
-Format of coefficient cell:
-Coefficient (Std. Error)
-
-
-

Adjust Standard Errors “on-the-fly”

-

Standard Errors can be adjusted after estimation, “on-the-fly”:

-
fit1 = fit.fetch_model(0)
-fit1.vcov("hetero").summary()
-
Model:  Y~X1
-###
-
-Estimation:  OLS
-Dep. var.: Y
-Inference:  hetero
-Observations:  998
-
-| Coefficient   |   Estimate |   Std. Error |   t value |   Pr(>|t|) |   2.5% |   97.5% |
-|:--------------|-----------:|-------------:|----------:|-----------:|-------:|--------:|
-| Intercept     |      0.919 |        0.112 |     8.223 |      0.000 |  0.699 |   1.138 |
-| X1            |     -1.000 |        0.082 |   -12.134 |      0.000 | -1.162 |  -0.838 |
----
-RMSE: 2.158   R2: 0.123
-
-
-

Poisson Regression via fepois()

-

You can estimate Poisson Regressions via the fepois() -function:

-
poisson_data = pf.get_data(model = "Fepois")
-pf.fepois("Y ~ X1 + X2 | f1 + f2", data = poisson_data).summary()
-
###
-
-Estimation:  Poisson
-Dep. var.: Y, Fixed effects: f1+f2
-Inference:  CRV1
-Observations:  997
-
-| Coefficient   |   Estimate |   Std. Error |   t value |   Pr(>|t|) |   2.5% |   97.5% |
-|:--------------|-----------:|-------------:|----------:|-----------:|-------:|--------:|
-| X1            |     -0.007 |        0.035 |    -0.190 |      0.850 | -0.075 |   0.062 |
-| X2            |     -0.015 |        0.010 |    -1.449 |      0.147 | -0.035 |   0.005 |
----
-Deviance: 1068.169
-
-
-

IV Estimation via three-part formulas

-

Last, PyFixest also supports IV estimation via three -part formula syntax:

-
fit_iv = pf.feols("Y ~ 1 | f1 | X1 ~ Z1", data = data)
-fit_iv.summary()
-
###
-
-Estimation:  IV
-Dep. var.: Y, Fixed effects: f1
-Inference:  CRV1
-Observations:  997
-
-| Coefficient   |   Estimate |   Std. Error |   t value |   Pr(>|t|) |   2.5% |   97.5% |
-|:--------------|-----------:|-------------:|----------:|-----------:|-------:|--------:|
-| X1            |     -1.025 |        0.115 |    -8.930 |      0.000 | -1.259 |  -0.790 |
----
-
-
-
-

Call for Contributions

-

Thanks for showing interest in contributing to pyfixest! -We appreciate all contributions and constructive feedback, whether that -be reporting bugs, requesting new features, or suggesting improvements -to documentation.

-

If you’d like to get involved, but are not yet sure how, please feel -free to send us an email. Some familiarity -with either Python or econometrics will help, but you really don’t need -to be a numpy core developer or have published in Econometrica -=) We’d be more than happy to invest time to help you get started!

-
- -
-

Acknowledgements

-

We thank all institutions that have funded or supported work on -PyFixest!

-

-

We are immensely grateful to the following individuals for their -invaluable feedback and contributions, which have greatly improved -pyfixest:

-
-
-

How to Cite

-

If you want to cite PyFixest, you can use the following BibTeX -entry:

-
@software{pyfixest,
-  author  = {{The PyFixest Authors}},
-  title   = {{pyfixest: Fast high-dimensional fixed effect estimation in Python}},
-  year    = {2025},
-  url     = {https://github.com/py-econometrics/pyfixest}
-}
-
-
-

License

-
-
- - - - -
- - - - - - - - - - - - - - - From d1c17aa35402ff04a98a58bfa4a59d6fef8ae140 Mon Sep 17 00:00:00 2001 From: Alexander Fischer Date: Mon, 23 Jun 2025 13:04:03 +0200 Subject: [PATCH 3/5] cleanups --- README.md | 2 +- docs/pyfixest.md | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 919ed4840..128ff0010 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ `PyFixest` is a Python implementation of the formidable [fixest](https://github.com/lrberge/fixest) package for fast high-dimensional fixed effects regression. -The package aims to mimic `fixest's` defaults as closely as Python allows: if you know `fixest` well, the goal is that you won't have to read the docs to get started! In particular, this means that all of `fixest's` defaults are mirrored by `PyFixest`. +The package aims to mimic `fixest` syntax and functionality as closely as Python allows: if you know `fixest` well, the goal is that you won't have to read the docs to get started! In particular, this means that all of `fixest's` defaults are mirrored by `PyFixest`. Nevertheless, for a quick introduction, you can take a look at the [documentation](https://py-econometrics.github.io/pyfixest/pyfixest.html) or the regression chapter of [Arthur Turrell's](https://github.com/aeturrell) book on [Coding for Economists](https://aeturrell.github.io/coding-for-economists/econmt-regression.html#imports). diff --git a/docs/pyfixest.md b/docs/pyfixest.md index 5edfafd51..e76de68ac 100644 --- a/docs/pyfixest.md +++ b/docs/pyfixest.md @@ -14,6 +14,7 @@ [![Downloads](https://static.pepy.tech/badge/pyfixest/month)](https://pepy.tech/project/pyfixest) [![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff) [![Pixi Badge][pixi-badge]][pixi-url] +[![Citation](https://img.shields.io/badge/Cite%20as-PyFixest-blue)](https://github.com/py-econometrics/pyfixest?tab=readme-ov-file#how-to-cite) [![Donate | GiveDirectly](https://img.shields.io/static/v1?label=GiveDirectly&message=Donate&color=blue&style=flat-square)](https://github.com/py-econometrics/pyfixest?tab=readme-ov-file#support-pyfixest) [pixi-badge]:https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/prefix-dev/pixi/main/assets/badge/v0.json&style=flat-square From 96bc5899456abafa9bb2a7b829f5160b31b6f44f Mon Sep 17 00:00:00 2001 From: Alexander Fischer Date: Mon, 23 Jun 2025 13:05:11 +0200 Subject: [PATCH 4/5] cleanups --- README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/README.md b/README.md index 128ff0010..9102aaa10 100644 --- a/README.md +++ b/README.md @@ -310,8 +310,6 @@ We thank all institutions that have funded or supported work on PyFixest! -We are immensely grateful to the following individuals for their invaluable feedback and contributions, which have greatly improved `pyfixest`: - ## How to Cite If you want to cite PyFixest, you can use the following BibTeX entry: From 25d934ad512f9b1e55f42ee9ea9cf2f2107ed6cf Mon Sep 17 00:00:00 2001 From: Alexander Fischer Date: Mon, 23 Jun 2025 13:07:57 +0200 Subject: [PATCH 5/5] Update README.md --- README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/README.md b/README.md index 9102aaa10..4f2c20abe 100644 --- a/README.md +++ b/README.md @@ -322,5 +322,3 @@ If you want to cite PyFixest, you can use the following BibTeX entry: url = {https://github.com/py-econometrics/pyfixest} } ``` - -## License