Pure python statistic tools for high energy physics.
Project description
Pure python statistics tools for high energy physics using zfit as a backend for maximum likelihood fits.
Tests for discovery, upper limits and confidence intervals are provided based on likelihood ratios in a frequentist approach (using pseudo-experiments) or using asymptotic formulae from “Asymptotic formulae for likelihood-based tests of new physics” [arxiv:1007.1727].
lauztat has been developed at EPFL, Lausanne Switzerland (laus’ or lauz is how the cool kids call Lausanne).
Installation
Install lauztat like any other Python package:
pip install lauztat # maybe with sudo or --user, or in virtualenv
Dependencies
matplotlib (optionnal)
Getting started
Usual HEP results can be recast in terms of hypothesis testing where you have to choose a null H0 and an alternative H1 hypothesis, H0 being the one you want to disprove. To do a test you will need your data (and weights), a model, a loss function builder and a minimizer as input to a calculator (FrequentistCalculator or AsymptoticCalculator).
Discovery:
if you do a measurement to find signals S in a dataset and you find an excess, this test answers “is the data compatible with the background only ?” with:
H0: background only (S = 0)
H1: presence of a signal (S ≠ 0)
The test return a p-value or a significance Z. If Z ≥ 3 there is an evidence and if Z ≥ 5 a discovery of a signal.
Examples of significance computations for a gaussian peak over an exponential background are provided for the asymptotic calculator and the frequentist calculator and can be ran in mybinder.
Upper limit:
if you find a small signal excess in a dataset, but not enough to claim an evidence or a discovery, you can exclude large signal yields S:
H0: background + some signal (S = S0)
H1: S < S0
S0 is adjusted to a predefined p-value, typically 5%. S0 is the upper limit on the signal yield S with 95 % confidence level (CL = 1 - p ; p = 5 % ⟺ CL = 95%).
Examples of CLs upper limits on the signal yield for a gaussian peak over an exponential background are provided for the asymptotic calculator and the frequentist calculator and can be ran in mybinder.
Confidence interval:
if you do a measurement of a parameter α with an estimator ᾰ, given an observation ᾰobs what value of α are not rejected at a certain confidence level (typically 68%)?
H0: α ≤ α down or α ≥ αup
H1: αdown < α < αup
αdown and αup are adjusted such the test returns a p-value of 32%.
Examples of confidence intervals on the mean of a gaussian peak are provided for the asymptotic calculator and the frequentist calculator (Feldman and Cousins confidence interval [arxiv:9711021]) and can be ran in mybinder.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file lauztat-1.1.1-py3-none-any.whl
.
File metadata
- Download URL: lauztat-1.1.1-py3-none-any.whl
- Upload date:
- Size: 31.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 770fb320dee328c69b320b0483d70864dc240fa96246f54c855ba7b741cd8839 |
|
MD5 | f66a52e27956f4bac01e9d7402132ca7 |
|
BLAKE2b-256 | ddebdfd9899403367bc8778b68c8e6b6a85464e269c964eb53637c6dd4747b31 |