Skip to content

Commit

Permalink
updated basic example to use local dataset
Browse files Browse the repository at this point in the history
  • Loading branch information
Maximilian Welsch committed Apr 10, 2019
1 parent 4de722d commit 22cf104
Showing 1 changed file with 8 additions and 62 deletions.
70 changes: 8 additions & 62 deletions examples/basic_example.py
Original file line number Diff line number Diff line change
@@ -1,44 +1,28 @@
# coding: utf-8

# In[1]:

import pathlib

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import root_pandas
import matplotlib

import templatefitter as tf


# In[3]:
import matplotlib
matplotlib.use('Agg')

ceph = "/ceph/welsch/moritz_data/"

signal = pd.read_pickle(ceph+"PI0_SIGNAL.pkl")
remaining = pd.read_pickle(ceph+"PI0_remaining.pkl")
xulnu = pd.read_pickle(ceph+"PI0_xulnu.pkl")
data = pd.read_pickle(ceph+"DATA.pkl")
path = pathlib.Path(__file__).resolve().parent.parent / "datasets/b_to_pizlnu"
signal = pd.read_csv(path/"signal.csv")
remaining = pd.read_csv(path/"remaining.csv")
xulnu = pd.read_csv(path/"xulnu.csv")
data = pd.read_csv(path/"data.csv")

data.head()


# ## Prepare Templates

# In[4]:


num_bins = 25
limits = (-1, 3)


# ### $e$ channel

# In[5]:


e_sig = signal.query("SignalChannel==1.")
e_remaining = remaining.query("SignalChannel==1.")
e_xulnu = xulnu.query("SignalChannel==1.")
Expand All @@ -58,20 +42,12 @@
e_tremaining = tf.templates.Template1d("Remaining", "missingMass", e_hremaining, color="indianred")
e_txulnu = tf.templates.Template1d("Xulnu", "missingMass", e_hxulnu, color="khaki")


# In[6]:


for template in [e_tsig,e_tremaining, e_txulnu]:
fig, axis = plt.subplots(1,1)
template.plot_on(axis)


# ### $\mu$ channel

# In[7]:


mu_sig = signal.query("SignalChannel==2.")
mu_remaining = remaining.query("SignalChannel==2.")
mu_xulnu = xulnu.query("SignalChannel==2.")
Expand All @@ -91,20 +67,13 @@
mu_tremaining = tf.templates.Template1d("Remaining", "missingMass", mu_hremaining, color="indianred")
mu_txulnu = tf.templates.Template1d("Xulnu", "missingMass", mu_hxulnu, color="khaki")


# In[8]:


for template in [mu_tsig, mu_tremaining, mu_txulnu]:
fig, axis = plt.subplots(1,1)
template.plot_on(axis)


# ## MultiChannelTemplate

# In[9]:


mct = tf.templates.MultiChannelTemplate()

mct.define_channel("e", num_bins, limits)
Expand All @@ -125,47 +94,24 @@
mct.add_data(e=tf.histograms.Hist1d(num_bins, limits, data=e_data.missingMass))
mct.add_data(mu=tf.histograms.Hist1d(num_bins, limits, data=mu_data.missingMass))

e_tsig.yield_param


# In[10]:

print(e_tsig.yield_param)

for channel in mct.channels.values():
fig, axis = plt.subplots(1,1, figsize=(8,8))
channel.plot_stacked_on(axis)


# In[11]:


fitter = tf.TemplateFitter(mct, "iminuit")


# In[12]:


fitter.do_fit(update_templates=True)


# In[18]:


print(fitter.get_significance("signal"))


# In[14]:


for channel in mct.channels.values():
fig, axis = plt.subplots(1,1, figsize=(8,8))
channel.plot_stacked_on(axis)
axis.legend()


# In[15]:


sig_yield, nll_profile, hesse = fitter.profile("signal_yield", num_cpu=25)
fig, ax = plt.subplots(1,1, figsize=(8,8), dpi=200)
ax.plot(sig_yield, nll_profile, label="profile")
Expand Down

0 comments on commit 22cf104

Please sign in to comment.