argParser.add_argument('--selection', action='store', type=str, default='trilepM-onZ1') argParser.add_argument('--trainingFraction', action='store', type=float, default=0.5) argParser.add_argument('--small', action='store_true') argParser.add_argument('--overwrite', action='store_true') args = argParser.parse_args() #Logger import tWZ.Tools.logger as logger logger = logger.get_logger("INFO", logFile=None) import Analysis.Tools.logger as logger_an logger_an = logger_an.get_logger("INFO", logFile=None) if args.plot_directory == None: args.plot_directory = plot_directory if args.selection == None: selectionString = "(1)" else: selectionString = cutInterpreter.cutString(args.selection) # Samples #from tWZ.samples.nanoTuples_RunII_nanoAODv6_private_postProcessed import * from tWZ.samples.nanoTuples_Summer16_nanoAODv6_private_postProcessed import *
argParser.add_argument('--isoDiscriminator', action='store', choices=["looseHybridIso", "FOmvaTOPT"], default="looseHybridIso") args = argParser.parse_args() if (args.isoDiscriminator == "looseHybridIso"): iso_disc = "hybridIso" else: iso_disc = "mvaTOPT" # Logger import tWZ.Tools.logger as logger import RootTools.core.logger as logger_rt logger = logger.get_logger(args.logLevel, logFile=None) logger_rt = logger_rt.get_logger(args.logLevel, logFile=None) if args.small: args.plot_directory += "_small" #if args.noData: args.plot_directory += "_noData" logger.info("Working in era %s", args.era) year = int(args.era[3:]) # this is designed to fail for era "RunII" if args.era == "Run2016": import tWZ.samples.nanoTuples_fakes_2016_nanoAODv6_private_postProcessed as samples if args.mode == 'mu': data_sample = samples.DoubleMuon_Run2016 triggers = [ "HLT_Mu3_PFJet40" ] #, "HLT_Mu8", "HLT_Mu17"]#, "HLT_Mu27"] HLT_Mu27 is actually in SingleMuon!
# print TreeVariable.fromString("HLT_Ele8_CaloIdM_TrackIdM_PFJet30/O") # print "+"*90 # print ( # [ # TreeVariable.fromString("{trigger}/O".format(trigger =t)) for t in options.trigger # ] # ) # exit(0) # print ["TreeVariable.fromString('{trigger}/I')".format(trigger =t) for t in options.trigger] # exit(0) # Logging import tWZ.Tools.logger as _logger logFile = '/tmp/%s_%s_%s_njob%s.txt'%(options.skim, '_'.join(options.samples), os.environ['USER'], str(0 if options.nJobs==1 else options.job)) logger = _logger.get_logger(options.logLevel, logFile = logFile) #import Analysis.Tools.logger as _logger_an #logger_an = _logger_an.get_logger(options.logLevel, logFile = logFile ) import RootTools.core.logger as _logger_rt logger_rt = _logger_rt.get_logger(options.logLevel, logFile = logFile ) def fill_vector_collection( event, collection_name, collection_varnames, objects, maxN = 100): setattr( event, "n"+collection_name, len(objects) ) for i_obj, obj in enumerate(objects[:maxN]): for var in collection_varnames: if var in obj.keys(): #if type(obj[var]) == type("string"): # obj[var] = int(ord(obj[var])) if type(obj[var]) == type(True):