pyhf icon indicating copy to clipboard operation
pyhf copied to clipboard

docs: Learn notebook on Neyman Construction and Interval estimation

Open lukasheinrich opened this issue 5 years ago • 4 comments

Description

Somewhat nerd-sniped by #966 I put together this notebook that goes through the neyman construction for the 4 test statistics defined in the CCGV paper.

Some of the prose can probably be expanded but I wanted to first see how it renders in the docs.

Checklist Before Requesting Reviewer

  • [ ] Tests are passing
  • [ ] "WIP" removed from the title of the pull request
  • [ ] Selected an Assignee for the PR to be responsible for the log summary

Before Merging

For the PR Assignees:

  • [ ] Summarize commit messages into a comprehensive review of the PR

lukasheinrich avatar Jul 27 '20 12:07 lukasheinrich

Check out this pull request on  ReviewNB

Review Jupyter notebook visual diffs & provide feedback on notebooks.


Powered by ReviewNB

Codecov Report

Patch coverage has no change and project coverage change: -1.12 :warning:

Comparison is base (a28d1a3) 98.30% compared to head (875fcf6) 97.18%.

:exclamation: Current head 875fcf6 differs from pull request most recent head 861ed71. Consider uploading reports for the commit 861ed71 to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #992      +/-   ##
==========================================
- Coverage   98.30%   97.18%   -1.12%     
==========================================
  Files          69       63       -6     
  Lines        4534     3663     -871     
  Branches      802      522     -280     
==========================================
- Hits         4457     3560     -897     
- Misses         45       64      +19     
- Partials       32       39       +7     
Flag Coverage Δ
contrib ?
doctest ?
unittests 97.18% <ø> (?)
unittests-3.10 ?
unittests-3.11 ?
unittests-3.8 ?
unittests-3.9 ?

Flags with carried forward coverage won't be shown. Click here to find out more.

see 67 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

codecov[bot] avatar Jul 27 '20 12:07 codecov[bot]

Docs build fine for me locally

image

this is my pip freeze output;

absl-py==0.9.0
alabaster==0.7.12
ansiwrap==0.8.4
appdirs==1.4.4
appnope==0.1.0
astmonkey==0.3.6
astunparse==1.6.3
async-generator==1.10
atomicwrites==1.4.0
attrs==19.3.0
awkward==0.12.21
Babel==2.8.0
backcall==0.2.0
black==19.10b0
bleach==3.1.5
bump2version==1.0.0
bumpversion==0.6.0
cachetools==4.1.1
certifi==2020.6.20
cffi==1.14.0
cfgv==3.1.0
chardet==3.0.4
check-manifest==0.42
click==7.1.2
click-completion==0.5.2
cloudpickle==1.4.1
colorama==0.4.3
coverage==5.1
cycler==0.10.0
decorator==4.4.2
defusedxml==0.6.0
descartes==1.1.0
distlib==0.3.1
docutils==0.16
entrypoints==0.3
filelock==3.0.12
future==0.18.2
gast==0.3.3
gitdb==4.0.5
GitPython==3.1.3
google-auth==1.18.0
google-auth-oauthlib==0.4.1
google-pasta==0.2.0
graphviz==0.14
grpcio==1.30.0
h5py==2.10.0
hist==1.0.6
hypothesis==5.19.3
identify==1.4.21
idna==2.10
imagesize==1.2.0
iminuit==1.4.5
importlib-metadata==1.7.0
ipykernel==5.3.0
ipython==7.16.1
ipython-genutils==0.2.0
ipywidgets==7.5.1
jax==0.1.72
jaxlib==0.1.51
jedi==0.17.1
Jinja2==2.11.2
joblib==0.16.0
json5==0.9.5
jsonpatch==1.26
jsonpointer==2.0
jsonschema==3.2.0
jupyter==1.0.0
jupyter-client==6.1.5
jupyter-console==6.1.0
jupyter-core==4.6.3
jupyterlab==2.1.5
jupyterlab-server==1.2.0
Keras-Preprocessing==1.1.2
keyring==21.2.1
kiwisolver==1.2.0
latexcodec==2.0.1
llvmlite==0.33.0
Markdown==3.2.2
MarkupSafe==1.1.1
matplotlib==3.2.2
memory-profiler==0.57.0
mistune==0.8.4
mock==4.0.2
more-itertools==8.4.0
mplhep==0.1.24
mpmath==1.1.0
nbclient==0.4.0
nbconvert==5.6.1
nbdime==2.0.0
nbformat==5.0.7
nbsphinx==0.7.1
nest-asyncio==1.3.3
networkx==2.4
nodeenv==1.4.0
nose==1.3.7
notebook==6.0.3
nteract-scrapbook==0.4.1
numba==0.50.1
numpy==1.19.0
oauthlib==3.1.0
opt-einsum==3.2.1
oset==0.1.3
packaging==20.4
pandas==1.0.5
pandoc==1.0.2
pandocfilters==1.4.2
papermill==2.1.2
parso==0.7.0
pathspec==0.8.0
pbr==5.4.5
pep517==0.8.2
pexpect==4.8.0
pickleshare==0.7.5
Pillow==7.2.0
pkginfo==1.5.0.1
pluggy==0.13.1
ply==3.11
pre-commit==2.6.0
prometheus-client==0.8.0
prompt-toolkit==3.0.5
protobuf==3.12.2
psutil==5.7.0
ptyprocess==0.6.0
py==1.9.0
py-cpuinfo==6.0.0
pyarrow==0.17.1
pyasn1==0.4.8
pyasn1-modules==0.2.8
pybtex==0.22.2
pybtex-docutils==0.2.2
pycparser==2.20
pydocstyle==5.0.2
pydot==1.4.1
pyflakes==2.2.0
pygal==2.4.0
pygaljs==1.0.2
Pygments==2.6.1
-e git+https://github.com/scikit-hep/pyhf.git@94189a2414ad25b5d3c5717d8b3fb80622794903#egg=pyhf
pyparsing==2.4.7
pyrsistent==0.16.0
pytest==3.10.1
pytest-benchmark==3.2.3
pytest-console-scripts==0.2.0
pytest-cov==2.10.0
pytest-mock==3.1.1
pytest-mpl==0.11
pytest-runner==5.2
python-dateutil==2.8.1
python-papi==5.5.1.5
pytz==2020.1
PyYAML==5.3.1
pyzmq==19.0.1
qtconsole==4.7.5
QtPy==1.9.0
readme-renderer==26.0
regex==2020.6.8
requests==2.24.0
requests-oauthlib==1.3.0
requests-toolbelt==0.9.1
rfc3986==1.4.0
rsa==4.6
scipy==1.5.0
seaborn==0.10.1
Send2Trash==1.5.0
Shapely==1.7.0
shellingham==1.3.2
six==1.15.0
smmap==3.0.4
snowballstemmer==2.0.0
sortedcontainers==2.2.2
Sphinx==3.1.2
sphinx-click==2.3.2
sphinx-copybutton==0.2.12
sphinx-issues==1.2.0
sphinx-rtd-theme==0.5.0
sphinxcontrib-applehelp==1.0.2
sphinxcontrib-bibtex==1.0.0
sphinxcontrib-devhelp==1.0.2
sphinxcontrib-htmlhelp==1.0.3
sphinxcontrib-jsmath==1.0.1
sphinxcontrib-qthelp==1.0.3
sphinxcontrib-serializinghtml==1.1.4
sympy==1.6.1
tenacity==6.2.0
tensorboard==2.2.2
tensorboard-plugin-wit==1.7.0
tensorflow==2.2.0
tensorflow-estimator==2.2.0
tensorflow-probability==0.10.0
termcolor==1.1.0
terminado==0.8.3
testpath==0.4.4
textwrap3==0.9.2
Theano==1.0.4
toml==0.10.1
torch==1.5.1
tornado==6.0.4
tqdm==4.47.0
traitlets==4.3.3
twine==3.2.0
typed-ast==1.4.1
uproot==3.11.7
uproot-methods==0.7.4
urllib3==1.25.9
virtualenv==20.0.25
wcwidth==0.2.5
webencodings==0.5.1
Werkzeug==1.0.1
widgetsnbextension==3.5.1
wrapt==1.12.1
zipp==3.1.0

lukasheinrich avatar Aug 05 '20 15:08 lukasheinrich

nothings obvious to me

absl-py==0.9.0							absl-py==0.9.0
alabaster==0.7.12						alabaster==0.7.12
ansiwrap==0.8.4							ansiwrap==0.8.4
appdirs==1.4.4							appdirs==1.4.4
argon2-cffi==20.1.0					      |	appnope==0.1.0
							      >	astmonkey==0.3.6
astunparse==1.6.3						astunparse==1.6.3
async-generator==1.10						async-generator==1.10
atomicwrites==1.4.0						atomicwrites==1.4.0
attrs==19.3.0							attrs==19.3.0
awkward==0.13.0						      |	awkward==0.12.21
Babel==2.8.0							Babel==2.8.0
backcall==0.2.0							backcall==0.2.0
black==19.10b0							black==19.10b0
bleach==3.1.5							bleach==3.1.5
							      >	bump2version==1.0.0
							      >	bumpversion==0.6.0
cachetools==4.1.1						cachetools==4.1.1
certifi==2020.6.20						certifi==2020.6.20
cffi==1.14.1						      |	cffi==1.14.0
							      >	cfgv==3.1.0
chardet==3.0.4							chardet==3.0.4
							      >	check-manifest==0.42
click==7.1.2							click==7.1.2
click-completion==0.5.2						click-completion==0.5.2
cloudpickle==1.3.0					      |	cloudpickle==1.4.1
coverage==5.2.1						      |	colorama==0.4.3
							      >	coverage==5.1
cycler==0.10.0							cycler==0.10.0
decorator==4.4.2						decorator==4.4.2
defusedxml==0.6.0						defusedxml==0.6.0
							      >	descartes==1.1.0
							      >	distlib==0.3.1
docutils==0.16							docutils==0.16
entrypoints==0.3						entrypoints==0.3
							      >	filelock==3.0.12
future==0.18.2							future==0.18.2
gast==0.3.3							gast==0.3.3
google-auth==1.20.0					      |	gitdb==4.0.5
							      >	GitPython==3.1.3
							      >	google-auth==1.18.0
google-auth-oauthlib==0.4.1					google-auth-oauthlib==0.4.1
google-pasta==0.2.0						google-pasta==0.2.0
graphviz==0.14.1					      |	graphviz==0.14
grpcio==1.30.0							grpcio==1.30.0
h5py==2.10.0							h5py==2.10.0
							      >	hist==1.0.6
							      >	hypothesis==5.19.3
							      >	identify==1.4.21
idna==2.10							idna==2.10
imagesize==1.2.0						imagesize==1.2.0
iminuit==1.4.9						      |	iminuit==1.4.5
importlib-metadata==1.7.0					importlib-metadata==1.7.0
ipykernel==5.3.4					      |	ipykernel==5.3.0
ipython==7.17.0						      |	ipython==7.16.1
ipython-genutils==0.2.0						ipython-genutils==0.2.0
ipywidgets==7.5.1						ipywidgets==7.5.1
jax==0.1.75						      |	jax==0.1.72
jaxlib==0.1.52						      |	jaxlib==0.1.51
jedi==0.17.2						      |	jedi==0.17.1
Jinja2==2.11.2							Jinja2==2.11.2
							      >	joblib==0.16.0
							      >	json5==0.9.5
jsonpatch==1.26							jsonpatch==1.26
jsonpointer==2.0						jsonpointer==2.0
jsonschema==3.2.0						jsonschema==3.2.0
jupyter==1.0.0							jupyter==1.0.0
jupyter-client==6.1.6					      |	jupyter-client==6.1.5
jupyter-console==6.1.0						jupyter-console==6.1.0
jupyter-core==4.6.3						jupyter-core==4.6.3
							      >	jupyterlab==2.1.5
							      >	jupyterlab-server==1.2.0
Keras-Preprocessing==1.1.2					Keras-Preprocessing==1.1.2
							      >	keyring==21.2.1
kiwisolver==1.2.0						kiwisolver==1.2.0
latexcodec==2.0.1						latexcodec==2.0.1
							      >	llvmlite==0.33.0
Markdown==3.2.2							Markdown==3.2.2
MarkupSafe==1.1.1						MarkupSafe==1.1.1
matplotlib==3.3.0					      |	matplotlib==3.2.2
							      >	memory-profiler==0.57.0
mistune==0.8.4							mistune==0.8.4
mock==4.0.2							mock==4.0.2
more-itertools==8.4.0						more-itertools==8.4.0
nbclient==0.4.1						      |	mplhep==0.1.24
							      >	mpmath==1.1.0
							      >	nbclient==0.4.0
nbconvert==5.6.1						nbconvert==5.6.1
							      >	nbdime==2.0.0
nbformat==5.0.7							nbformat==5.0.7
nbsphinx==0.7.1							nbsphinx==0.7.1
nest-asyncio==1.4.0					      |	nest-asyncio==1.3.3
							      >	networkx==2.4
							      >	nodeenv==1.4.0
nose==1.3.7							nose==1.3.7
notebook==6.1.1						      |	notebook==6.0.3
nteract-scrapbook==0.4.1					nteract-scrapbook==0.4.1
numpy==1.19.1						      |	numba==0.50.1
							      >	numpy==1.19.0
oauthlib==3.1.0							oauthlib==3.1.0
opt-einsum==3.3.0					      |	opt-einsum==3.2.1
oset==0.1.3							oset==0.1.3
packaging==20.4							packaging==20.4
pandas==1.1.0						      |	pandas==1.0.5
							      >	pandoc==1.0.2
pandocfilters==1.4.2						pandocfilters==1.4.2
papermill==2.1.2						papermill==2.1.2
parso==0.7.1						      |	parso==0.7.0
pathspec==0.8.0							pathspec==0.8.0
pbr==5.4.5							pbr==5.4.5
							      >	pep517==0.8.2
pexpect==4.8.0							pexpect==4.8.0
pickleshare==0.7.5						pickleshare==0.7.5
Pillow==7.2.0							Pillow==7.2.0
pip==20.2.1						      |	pkginfo==1.5.0.1
pluggy==0.13.1							pluggy==0.13.1
							      >	ply==3.11
							      >	pre-commit==2.6.0
prometheus-client==0.8.0					prometheus-client==0.8.0
prompt-toolkit==3.0.5						prompt-toolkit==3.0.5
protobuf==3.12.4					      |	protobuf==3.12.2
							      >	psutil==5.7.0
ptyprocess==0.6.0						ptyprocess==0.6.0
py==1.9.0							py==1.9.0
py-cpuinfo==7.0.0					      |	py-cpuinfo==6.0.0
pyarrow==1.0.0						      |	pyarrow==0.17.1
pyasn1==0.4.8							pyasn1==0.4.8
pyasn1-modules==0.2.8						pyasn1-modules==0.2.8
pybtex==0.22.2							pybtex==0.22.2
pybtex-docutils==0.2.2						pybtex-docutils==0.2.2
pycparser==2.20							pycparser==2.20
pydocstyle==5.0.2						pydocstyle==5.0.2
							      >	pydot==1.4.1
							      >	pyflakes==2.2.0
pygal==2.4.0							pygal==2.4.0
pygaljs==1.0.2							pygaljs==1.0.2
Pygments==2.6.1							Pygments==2.6.1
pyhf==0.5.2.dev13					      |	-e git+https://github.com/scikit-hep/pyhf.git@94189a2414ad25b
pyparsing==2.4.7						pyparsing==2.4.7
pyrsistent==0.16.0						pyrsistent==0.16.0
pytest==3.10.1							pytest==3.10.1
pytest-benchmark==3.2.3						pytest-benchmark==3.2.3
pytest-console-scripts==0.2.0					pytest-console-scripts==0.2.0
pytest-cov==2.10.0						pytest-cov==2.10.0
pytest-mock==3.2.0					      |	pytest-mock==3.1.1
pytest-mpl==0.11						pytest-mpl==0.11
pytest-runner==5.2						pytest-runner==5.2
python-dateutil==2.8.1						python-dateutil==2.8.1
							      >	python-papi==5.5.1.5
pytz==2020.1							pytz==2020.1
PyYAML==5.3.1							PyYAML==5.3.1
pyzmq==19.0.2						      |	pyzmq==19.0.1
qtconsole==4.7.5						qtconsole==4.7.5
QtPy==1.9.0							QtPy==1.9.0
regex==2020.7.14					      |	readme-renderer==26.0
							      >	regex==2020.6.8
requests==2.24.0						requests==2.24.0
requests-oauthlib==1.3.0					requests-oauthlib==1.3.0
							      >	requests-toolbelt==0.9.1
							      >	rfc3986==1.4.0
rsa==4.6							rsa==4.6
scipy==1.5.2						      |	scipy==1.5.0
							      >	seaborn==0.10.1
Send2Trash==1.5.0						Send2Trash==1.5.0
setuptools==49.2.1					      |	Shapely==1.7.0
shellingham==1.3.2						shellingham==1.3.2
six==1.15.0							six==1.15.0
							      >	smmap==3.0.4
snowballstemmer==2.0.0						snowballstemmer==2.0.0
							      >	sortedcontainers==2.2.2
Sphinx==3.1.2							Sphinx==3.1.2
sphinx-click==2.5.0					      |	sphinx-click==2.3.2
sphinx-copybutton==0.3.0				      |	sphinx-copybutton==0.2.12
sphinx-issues==1.2.0						sphinx-issues==1.2.0
sphinx-rtd-theme==0.5.0						sphinx-rtd-theme==0.5.0
sphinxcontrib-applehelp==1.0.2					sphinxcontrib-applehelp==1.0.2
sphinxcontrib-bibtex==1.0.0					sphinxcontrib-bibtex==1.0.0
sphinxcontrib-devhelp==1.0.2					sphinxcontrib-devhelp==1.0.2
sphinxcontrib-htmlhelp==1.0.3					sphinxcontrib-htmlhelp==1.0.3
sphinxcontrib-jsmath==1.0.1					sphinxcontrib-jsmath==1.0.1
sphinxcontrib-qthelp==1.0.3					sphinxcontrib-qthelp==1.0.3
sphinxcontrib-serializinghtml==1.1.4				sphinxcontrib-serializinghtml==1.1.4
							      >	sympy==1.6.1
tenacity==6.2.0							tenacity==6.2.0
tensorboard==2.2.2						tensorboard==2.2.2
tensorboard-plugin-wit==1.7.0					tensorboard-plugin-wit==1.7.0
tensorflow==2.2.0						tensorflow==2.2.0
tensorflow-estimator==2.2.0					tensorflow-estimator==2.2.0
tensorflow-probability==0.10.1				      |	tensorflow-probability==0.10.0
termcolor==1.1.0						termcolor==1.1.0
terminado==0.8.3						terminado==0.8.3
testpath==0.4.4							testpath==0.4.4
textwrap3==0.9.2						textwrap3==0.9.2
							      >	Theano==1.0.4
toml==0.10.1							toml==0.10.1
torch==1.6.0						      |	torch==1.5.1
tornado==6.0.4							tornado==6.0.4
tqdm==4.48.2						      |	tqdm==4.47.0
traitlets==4.3.3						traitlets==4.3.3
							      >	twine==3.2.0
typed-ast==1.4.1						typed-ast==1.4.1
uproot==3.12.0						      |	uproot==3.11.7
uproot-methods==0.7.4						uproot-methods==0.7.4
urllib3==1.25.10					      |	urllib3==1.25.9
							      >	virtualenv==20.0.25
wcwidth==0.2.5							wcwidth==0.2.5
webencodings==0.5.1						webencodings==0.5.1
Werkzeug==1.0.1							Werkzeug==1.0.1
wheel==0.34.2						      <
widgetsnbextension==3.5.1					widgetsnbextension==3.5.1
wrapt==1.12.1							wrapt==1.12.1
zipp==3.1.0							zipp==3.1.0

lukasheinrich avatar Aug 05 '20 15:08 lukasheinrich