ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/VHbb/python/evaluateMVA.py
(Generate patch)

Comparing UserCode/VHbb/python/evaluateMVA.py (file contents):
Revision 1.8 by peller, Thu Aug 2 16:03:52 2012 UTC vs.
Revision 1.14 by peller, Thu Sep 27 07:34:24 2012 UTC

# Line 9 | Line 9 | from copy import copy
9   #suppres the EvalInstace conversion warning bug
10   import warnings
11   warnings.filterwarnings( action='ignore', category=RuntimeWarning, message='creating converter.*' )
12 + from optparse import OptionParser
13   from BetterConfigParser import BetterConfigParser
14   from samplesclass import sample
15   from mvainfos import mvainfo
# Line 19 | Line 20 | from printcolor import printc
20   #CONFIGURE
21  
22   #load config
23 + #os.mkdir(path+'/sys')
24 + argv = sys.argv
25 + parser = OptionParser()
26 + parser.add_option("-U", "--update", dest="update", default=0,
27 +                      help="update infofile")
28 + parser.add_option("-D", "--discr", dest="discr", default="",
29 +                      help="discriminators to be added")
30 + parser.add_option("-P", "--path", dest="path", default="",
31 +                      help="path to samples")
32 + parser.add_option("-S", "--samples", dest="names", default="",
33 +                      help="samples you want to run on")
34 + parser.add_option("-C", "--config", dest="config", default=[], action="append",
35 +                      help="configuration file")
36 + (opts, args) = parser.parse_args(argv)
37 + if opts.config =="":
38 +        opts.config = "config"
39   config = BetterConfigParser()
40 < config.read('./config')
40 > #config.read('./config7TeV_ZZ')
41 > config.read(opts.config)
42 > anaTag = config.get("Analysis","tag")
43  
44   #get locations:
45   Wdir=config.get('Directories','Wdir')
46 <
28 < MVAdir=config.get('Directories','MVAdir')
46 > MVASubdir=config.get('Directories','MVAdir')
47  
48   #systematics
49   systematics=config.get('systematics','systematics')
# Line 40 | Line 58 | systematics=systematics.split(' ')
58   ######################
59   #Evaluate multi: Must Have same treeVars!!!
60  
61 < Apath=sys.argv[1]
62 < arglist=sys.argv[2] #RTight_blavla,bsbsb
61 > Apath=opts.path
62 > infofile = open(Apath+'/samples.info','r')
63 > info = pickle.load(infofile)
64 > infofile.close()
65 > arglist=opts.discr #RTight_blavla,bsbsb
66  
67 < namelistIN=sys.argv[3]
67 > namelistIN=opts.names
68   namelist=namelistIN.split(',')
69  
70 < doinfo=bool(int(sys.argv[4]))
70 > doinfo=bool(int(opts.update))
71  
72   MVAlist=arglist.split(',')
73 + MVAdir=config.get('Directories','vhbbpath')
74  
75   #CONFIG
76   #factory
# Line 62 | Line 84 | factoryname=config.get('factory','factor
84   #MVAinfofiles=[]
85   MVAinfos=[]
86   for MVAname in MVAlist:
87 <    MVAinfofile = open(Wdir+'/weights/'+factoryname+'_'+MVAname+'.info','r')
87 >    MVAinfofile = open(MVAdir+'/data/'+factoryname+'_'+MVAname+'.info','r')
88      MVAinfos.append(pickle.load(MVAinfofile))
89      MVAinfofile.close()
90      
# Line 101 | Line 123 | for i in range(len( MVA_Vars['Nominal'])
123   #        reader.AddSpectator(spectators[i],MVA_spectator_buffer[i])
124   #Load raeder
125   for i in range(0,len(readers)):
126 <    readers[i].BookMVA(MVAinfos[i].MVAname,MVAinfos[i].getweightfile())
126 >    readers[i].BookMVA(MVAinfos[i].MVAname,MVAdir+'/data/'+MVAinfos[i].getweightfile())
127   #--> Now the MVA is booked
128  
129   #Apply samples
# Line 114 | Line 136 | for job in Ainfo:
136      if eval(job.active):
137          if job.name in namelist:
138              #get trees:
139 <            input = TFile.Open(job.getpath(),'read')
140 <            outfile = TFile.Open(job.path+'/'+MVAdir+job.prefix+job.identifier+'.root','recreate')
139 >            input = TFile.Open(Apath+'/'+job.getpath(),'read')
140 >            outfile = TFile.Open(Apath+'/'+MVASubdir+job.prefix+job.identifier+'.root','recreate')
141              input.cd()
142              obj = ROOT.TObject
143              for key in ROOT.gDirectory.GetListOfKeys():

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines