Skip to main content

Simple data fitting package

Project description

Pyfit

pip install ifitpy

This fit package permits to, well, fit a given x,y data. It encapsulates both iminuit and curve_fit. There are two type of functions. Simple (linear, expo) and Complex(gaussian, gaussian2d, poly). For Simple function fit(x,y) are fit(x,y,p0) are valid inputs. In the first option the fit attempts to estimate the initial starting point. In the second option, a list of parameters (p0) is used to initialized the fit.

For Complex functions fit(x,y, n) are fit(x,y,p0) are valid inputs. If n is used, then the algorithm will use this value to generate the fitting function with n components. For example, fit(xx,yy,n=3) will fit a sum of two gaussian(2d) or a 3-degree polonimal function. And p0 zero is also estimated. If fit(x,y,n,p0) is used, then p0 will be the initialization parameters. Note that len(p0) = n*parameters_to_fit.

There's also a f.fitBinned(xx,yy,bins=50) option which allows fitting a profile histogram instead of the raw data. This option is often faster and is the recommended one as it takes into account the statistical fluctuation of the data. Don't forget to check the Tutorial notebook.

To extract the fit results use

from ifitpy import Fitter
f = Fitter("linear") #linear, expo, gaussian, gaussian2d, poly
f.fit([0,10], [0,-10])
p = f.getParams()
print(p) # prints a string with the available variables.
print(p.vars) # list of the results
print(p.m) # slope for the “linear” type
print(p.b) # slope for the “intercept” type

This an ongoing project!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ifitpy-0.0.5.tar.gz (7.4 kB view details)

Uploaded Source

File details

Details for the file ifitpy-0.0.5.tar.gz.

File metadata

  • Download URL: ifitpy-0.0.5.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.5

File hashes

Hashes for ifitpy-0.0.5.tar.gz
Algorithm Hash digest
SHA256 9106ac0c7de35677da5ff48eb01945a7d0bf8fb23113b2b8022a40d48ea3e155
MD5 cf37b7b1c14c3b4fa73286f909f84c0a
BLAKE2b-256 322eafa999aff4ee031174707729d3814cf386de26fe8b78dc92dec2c89f3f10

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page