From 17f96ce626beb7e9839b5dab3c588af6dc6d6532 Mon Sep 17 00:00:00 2001 From: Nikolai Hartmann <Nikolai.Hartmann@physik.uni-muenchen.de> Date: Wed, 17 Oct 2018 08:45:08 +0200 Subject: [PATCH] option to fix parameters when writing friends (useful for parametrized classifiers) --- toolkit.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/toolkit.py b/toolkit.py index 3e75d2c..6780435 100755 --- a/toolkit.py +++ b/toolkit.py @@ -1024,7 +1024,9 @@ class ClassificationProject(object): def write_friend_tree(self, score_name, source_filename, source_treename, target_filename, target_treename, - batch_size=100000, score_mode=None): + batch_size=100000, + score_mode=None, + fixed_params=None): f = ROOT.TFile.Open(source_filename) tree = f.Get(source_treename) entries = tree.GetEntries() @@ -1037,8 +1039,11 @@ class ClassificationProject(object): x_from_tree = tree2array(tree, branches=self.branches+self.identifiers, start=start, stop=start+batch_size) + # for parametrized classifiers + if fixed_params is not None: + for param_name, value in fixed_params.items(): + x_from_tree[param_name] = value x_eval = rec2array(x_from_tree[self.branches]) - if len(self.identifiers) > 0: # create list of booleans that indicate which events where used for training df_identifiers = pd.DataFrame(x_from_tree[self.identifiers]) -- GitLab