A pure-python port of the dftools
R package.
This package attempts to imitate the dftools
package (repo: https://github.com/obreschkow/dftools ) quite closely,
while being as Pythonic as possible. Do note that 2D+ models are not yet implemented in this Python port, and neither
are non-parametric models. Hopefully they will be along soon.
From dftool
's description:
This package can find the most likely P parameters of a D-dimensional distribution function (DF) generating N objects, where each object is specified by D observables with measurement uncertainties. For instance, if the objects are galaxies, it can fit a MF (P=1), a mass-size distribution (P=2) or the mass-spin-morphology distribution (P=3). Unlike most common fitting approaches, this method accurately accounts for measurement is uncertainties and complex selection functions. A full description of the algorithm can be found in Obreschkow et al. (2017).
In short, clean out Eddington bias from your fits:
- Free software: MIT license
- Documentation: https://pydftools.readthedocs.io.
If you use this software, please consider starring the repository. The methods and
algorithms used by the software were developed in the paper
"Eddington's Demon: Inferring Galaxy Mass Functions and other Distributions from Uncertain Data",
so please consult it and cite it if you use pydftools
!
- Simple and fast parameter fitting for generative distribution functions
- Several examples (with astronomical applications in mind)
- Several plotting routines so that you can go from nothing to a plot in minutes
- A
mockdata()
function which can produce data to fit. - Support for arbitrary 1D models, several kinds of selection functions, jackknife and bootstrap resampling, Gaussian error estimation and more.
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.