def DATA_Merger(infilename1, infilename2): filename_list1 = read_file_name(infilename1) infile1 = filename_list1[2] filename_list2 = read_file_name(infilename2) infile2 = filename_list2[2] DATE_ROW = MakeList_column(infile1) DATA_ROW = MakeList_column(infile2) for i in range(len(DATA_ROW)): DATE_ROW.append(DATA_ROW[i]) NEWNAME = infile1.replace(".txt", "_MERGE_" + filename_list2[0]) FN = NEWNAME + ".txt" Of = open(FN, "w+") for j in range(len(DATE_ROW[0])): for i in range(len(DATE_ROW)): Of.write("%s" % DATE_ROW[i][j]) if (i != len(DATE_ROW) - 1): Of.write(" ") else: Of.write("\n") # Of.write("%s " %DATE_ROW[0][j]) # Of.write("%s\n" %DATE_ROW[1][j]) Of.close() return FN
def Month_divide(filename): FILE = read_file_name(filename) infile1 = FILE[2] OUTPUT_PATH = FILE[3] + FILE[0] COL_LIST1 = MakeList_column(infile1) #print(COL_LIST1) M_LIST = [] for k in range(len(COL_LIST1[0])): gg = [] for m in range(len(COL_LIST1)): gg.append(COL_LIST1[m][k]) M_LIST.append(gg) # if k==0: # continue #print(M_LIST) RETURN_LIST = [] bb = [] for a in range(len(M_LIST)): # aa=[] # aa.append(M_LIST[a]) if a > 1 and (float(M_LIST[a][0]) - float(M_LIST[a - 1][0])) > 1: #print(bb) FN = "M" + str(int(M_LIST[a - 1][0]) // 100) + ".txt" FN = OUTPUT_PATH + "_" + FN RETURN_LIST.append(FN) Of = open(FN, "w+") for i in range(len(bb)): for j in range(len(bb[i])): Of.write("%s" % bb[i][j]) if (j != len(bb[i]) - 1): Of.write(" ") if (j == len(bb[i]) - 1): Of.write("\n") Of.close() bb = [] bb.append(M_LIST[0]) cc = bb bb.append(M_LIST[a]) # print(bb) #print(bb) #print(cc) FN = "M" + str(int(cc[1][0]) // 100) + ".txt" FN = OUTPUT_PATH + "_" + FN Of = open(FN, "w+") for i in range(len(cc)): for j in range(len(cc[i])): Of.write("%s" % cc[i][j]) if (j != len(cc[i]) - 1): Of.write(" ") if (j == len(cc[i]) - 1): Of.write("\n") Of.close() RETURN_LIST.append(FN) return RETURN_LIST
def Read_Data_n_MC(self): return_list = [] for i in range(len(self.filelist)): tfile = TFile(read_file_name(self.filelist[i])[2], "READ") return_list.append(tfile) #print(return_list) return return_list
def READ_ExRoot(filename): Filename_list = read_file_name(filename) Filename = Filename_list[2] chain = TChain("Delphes") ## in C++ :: "TChain chain("LHEF");" chain.Add(Filename) ROOT.gSystem.Load("libDelphes") treeReader = ExRootTreeReader(chain) Entries = treeReader.GetEntries() print "Total Entry number :", Entries return [Entries, treeReader]
def READ_ExRoot(filename): Filename_list = read_file_name(filename) Filename = Filename_list[2] chain = TChain("Delphes") ## in C++ :: "TChain chain("LHEF");" chain.Add(Filename) ROOT.gSystem.Load("libDelphes") gInterpreter.Declare('#include "/afs/cern.ch/user/j/junho/work/MyAnalysis_IPHC2/CMSSW_8_0_23/src/MG5_aMC_v2_5_5/Delphes/TEST/delphes/classes/DelphesClasses.h"') gInterpreter.Declare('#include "/afs/cern.ch/user/j/junho/work/MyAnalysis_IPHC2/CMSSW_8_0_23/src/MG5_aMC_v2_5_5/Delphes/TEST/delphes/external/ExRootAnalysis/ExRootTreeReader.h"') treeReader = ExRootTreeReader(chain) Entries = treeReader.GetEntries() print "Total Entry number :", Entries return [Entries,treeReader]
def Store_ROOT(filename): Selected_Event_list = Do_selection(filename) FileName_list = read_file_name(filename) Infile_name = FileName_list[0] InputFile_dir = FileName_list[3] outROOT_file_name = "Ntuple_" + Infile_name Outfile = InputFile_dir + outROOT_file_name #print Outfile outROOT_file = TFile(Outfile,"recreate") tree = TTree('tree','tree') ### TODO #### branch first lep1pt = np.zeros(1,dtype=float); lep1eta=np.zeros(1,dtype=float); lep1phi=np.zeros(1,dtype=float); #lep1E=np.zeros(1,dtype=float); lep2pt = np.zeros(1,dtype=float); lep2eta=np.zeros(1,dtype=float); lep2phi=np.zeros(1,dtype=float); #lep2E=np.zeros(1,dtype=float); jet1pt = np.zeros(1,dtype=float); jet1eta=np.zeros(1,dtype=float); jet1phi=np.zeros(1,dtype=float); jet1M=np.zeros(1,dtype=float); jet2pt = np.zeros(1,dtype=float); jet2eta=np.zeros(1,dtype=float); jet2phi=np.zeros(1,dtype=float); jet2M=np.zeros(1,dtype=float); MET = np.zeros(1,dtype=float); #lep1charge=np.zeros(1,dtype=float); lep2charge=np.zeros(1,dtype=float) lep1PID = np.zeros(1,dtype=float); lep2PID = np.zeros(1,dtype=float); Mjj=np.zeros(1,dtype=float); dr_ll_jj=np.zeros(1,dtype=float) dphijj=np.zeros(1,dtype=float); zeppen_lep1 = np.zeros(1,dtype=float); zeppen_lep2 = np.zeros(1,dtype=float) METphi = np.zeros(1,dtype=float); detajj = np.zeros(1,dtype=float); Mll = np.zeros(1,dtype=float); RpT = np.zeros(1,dtype=float); LL_Helicity=np.zeros(1,dtype=float); TL_Helicity=np.zeros(1,dtype=float); TT_Helicity=np.zeros(1,dtype=float); ### TODO #### branch second tree.Branch('lep1pt',lep1pt,'lep1pt/D'); tree.Branch('lep1eta',lep1eta,'lep1eta/D');tree.Branch('lep1phi',lep1phi,'lep1phi/D'); #tree.Branch('lep1E',lep1E,'lep1E/D'); tree.Branch('lep2pt',lep2pt,'lep2pt/D'); tree.Branch('lep2eta',lep2eta,'lep2eta/D');tree.Branch('lep2phi',lep2phi,'lep2phi/D'); #tree.Branch('lep2E',lep2E,'lep2E/D') tree.Branch('jet1pt',jet1pt,'jet1pt/D'); tree.Branch('jet1eta',jet1eta,'jet1eta/D');tree.Branch('jet1phi',jet1phi,'jet1phi/D'); tree.Branch('jet1M',jet1M,'jet1M/D') tree.Branch('jet2pt',jet2pt,'jet2pt/D'); tree.Branch('jet2eta',jet2eta,'jet2eta/D');tree.Branch('jet2phi',jet2phi,'jet2phi/D'); tree.Branch('jet2M',jet2M,'jet2M/D') tree.Branch('MET',MET,'MET/D');#tree.Branch('lep1charge',lep1charge,'lep1charge/D'); tree.Branch('lep2charge',lep2charge,'lep2charge/D'); tree.Branch('lep1PID',lep1PID,'lep1PID/D'); tree.Branch('lep2PID',lep2PID,'lep2PID/D'); tree.Branch('Mjj',Mjj,'Mjj/D'); tree.Branch('dr_ll_jj',dr_ll_jj,'dr_ll_jj/D'); tree.Branch('dphijj',dphijj,'dphijj/D') tree.Branch('zeppen_lep1',zeppen_lep1,'zeppen_lep1/D'); tree.Branch('zeppen_lep2',zeppen_lep2,'zeppen_lep2/D') tree.Branch('METphi',METphi,'METphi/D'); tree.Branch('detajj',detajj,'detajj/D'); tree.Branch('Mll',Mll,'Mll/D'); tree.Branch('RpT',RpT,'RpT/D') tree.Branch('LL_Helicity',LL_Helicity,'LL_Helicity/D'); tree.Branch('TL_Helicity',TL_Helicity,'TL_Helicity/D') tree.Branch('TT_Helicity',TT_Helicity,'TT_Helicity/D') ### TODO #### branch fill for i in range(len(Selected_Event_list)): lep1pt[0] = Selected_Event_list[i][0]; lep1eta[0] = Selected_Event_list[i][1]; lep1phi[0] = Selected_Event_list[i][2]; #lep1E[0] = Selected_Event_list[i][3]; lep2pt[0] = Selected_Event_list[i][3]; lep2eta[0] = Selected_Event_list[i][4]; lep2phi[0] = Selected_Event_list[i][5]; #lep2E[0] = Selected_Event_list[i][7]; jet1pt[0] = Selected_Event_list[i][6]; jet1eta[0] = Selected_Event_list[i][7]; jet1phi[0] = Selected_Event_list[i][8];jet1M[0] = Selected_Event_list[i][9]; jet2pt[0] = Selected_Event_list[i][10]; jet2eta[0] = Selected_Event_list[i][11]; jet2phi[0] = Selected_Event_list[i][12]; jet2M[0] = Selected_Event_list[i][13]; MET[0] = Selected_Event_list[i][14]; #lep1charge[0] = Selected_Event_list[i][13]; lep2charge[0] = Selected_Event_list[i][14]; lep1PID[0] = Selected_Event_list[i][15]; lep2PID[0] = Selected_Event_list[i][16]; Mjj[0] = Selected_Event_list[i][17]; dr_ll_jj[0] = Selected_Event_list[i][18]; dphijj[0] = Selected_Event_list[i][19]; zeppen_lep1[0] = Selected_Event_list[i][20]; zeppen_lep2[0] = Selected_Event_list[i][21]; METphi[0] = Selected_Event_list[i][22]; detajj[0] = Selected_Event_list[i][23]; Mll[0] = Selected_Event_list[i][24]; RpT[0] = Selected_Event_list[i][25]; LL_Helicity[0] = Selected_Event_list[i][26]; TL_Helicity[0] = Selected_Event_list[i][27]; TT_Helicity[0] = Selected_Event_list[i][28]; tree.Fill() outROOT_file.Write() outROOT_file.Close()
def Add_first(texts_path): Total_data_list = [] all_text_path = texts_path print("Total involved text data files :", len(all_text_path)) #print(read_file_name(all_text_path[0])) for i in range(len(all_text_path)): print(all_text_path[i]) First_col_write = read_file_name(all_text_path[i])[0] #print(First_col_write) ROW_LIST = MakeList(read_file_name(all_text_path[i])[2]) for j in range(len(ROW_LIST)): if ROW_LIST[j][0] == " ": continue if ROW_LIST[j][0] == "V1": continue temp_list = [First_col_write] for k in range(len(ROW_LIST[j])): temp_list.append(ROW_LIST[j][k]) Total_data_list.append(temp_list) #print(Total_data_list) print("Total Entry :", len(Total_data_list)) return Total_data_list
def Plotting(text_infile="Loss_epoch.txt"): data = open(text_infile, 'r') l_epoch = [] l_val_loss = [] l_val_error = [] l_train_loss = [] l_train_error = [] for line in data: if "Epoch" in line: continue Epoch, Val_loss, Val_error, Train_loss, Train_error = line.split() l_epoch.append(int(Epoch)) l_val_loss.append(float(Val_loss)) l_val_error.append(float(Val_error)) l_train_loss.append(float(Train_loss)) l_train_error.append(float(Train_error)) fig = plt.figure() ax_loss = fig.add_subplot(111) #ax_acc.plot(range(1,len(l_epoch)+1), l_epoch, label='Epoch', color='blue') ax_loss.set_xlabel('Epoch') ax_loss.plot(range(1, len(l_epoch) + 1), l_val_loss, label='Validation Loss', color='blue') ax_loss.plot(np.nan, 'black', label="Validation Error/Accuracy") ax_loss.plot(range(1, len(l_epoch) + 1), l_train_loss, label='Train Loss', color='red') ax_loss.plot(np.nan, 'green', label="Train Error/Accuracy") ax_loss.set_ylabel('Loss-value Scale', color='red') ax_err = ax_loss.twinx() ax_err.plot(range(1, len(l_epoch) + 1), l_val_error, label='Validation Error', color='black') ax_err.plot(range(1, len(l_epoch) + 1), l_train_error, label='Train Error', color='green') ax_err.set_ylabel('Error/Accuracy Scale', color='blue') ax_loss.legend(loc=0) SaveDir = read_file_name(text_infile)[3] + "/Plot_Loss_epoch.pdf" plt.savefig(SaveDir)
def Daily_data(filename): FILE = read_file_name(filename) infile1 = FILE[2] COL_LIST1 = MakeList_column(infile1) # print(COL_LIST1) for s in range(len(COL_LIST1)-1): # print(COL_LIST1[s][0]) x= [COL_LIST1[0][i+1] for i in range(len(COL_LIST1[0])-1)] y = [float(COL_LIST1[s+1][j+1]) for j in range(len(COL_LIST1[0])-1)] plt.xlabel(COL_LIST1[0][0]) plt.ylabel(COL_LIST1[s+1][0]) # print(x,y) plt.plot(x,y,color='green',marker='o',linestyle='solid') plt.grid(True) SavefileName = FILE[0] + "_" + COL_LIST1[s][0] + "_month_plot.pdf" print(SavefileName) # plt.show() plt.savefig(SavefileName) plt.close('all')
def ADD_daily_date_FirstLine(START_YEAR=1996, START_MONTH=1, START_DAY=1, infilename="daily_test.txt"): filename_list = read_file_name(infilename) infile = filename_list[2] outfile = infile outfile = outfile.replace(".txt", "") outfile = outfile + "_Daily.txt" year = START_YEAR month = START_MONTH day = START_DAY DATE_class = DATE_MAKER() Daily_date_list = [] Daily_date_list.append("DATE") for i in range(10000): # for i in range(8036): DATE_num = DATE_class.DATE_MAKER(year, month, day) DATE_str = DATE_class.MAKE_DATE_STR(DATE_num) # print(DATE_str[3]) Daily_date_list.append(DATE_str[3]) year = DATE_num[0] month = DATE_num[1] day = DATE_num[2] + 1 Origin_row_list = MakeList(infile) # print(Origin_row_list) return_list = [] for i in range(len(Origin_row_list)): temp_list = [] temp_list.append(Daily_date_list[i]) for j in range(len(Origin_row_list[0])): temp_list.append(Origin_row_list[i][j]) return_list.append(temp_list) MAKE_TXT(return_list, outfile) # print(return_list) print("created file name : ", outfile) return outfile
def Store_ROOT(filename): Selected_Event_list = Do_selection(filename) FileName_list = read_file_name(filename) Infile_name = FileName_list[0] InputFile_dir = FileName_list[3] outROOT_file_name = "Ntuple_" + Infile_name Outfile = InputFile_dir + outROOT_file_name #print Outfile outROOT_file = TFile(Outfile,"recreate") tree = TTree('tree','tree') ### TODO #### branch first lep1pt=np.zeros(1,dtype=float); lep1eta=np.zeros(1,dtype=float); lep1phi=np.zeros(1,dtype=float); lep1e=np.zeros(1,dtype=float); lep2pt=np.zeros(1,dtype=float); lep2eta=np.zeros(1,dtype=float); lep2phi=np.zeros(1,dtype=float); lep2e=np.zeros(1,dtype=float); lep3pt=np.zeros(1,dtype=float); lep3eta=np.zeros(1,dtype=float); lep3phi=np.zeros(1,dtype=float); lep3e=np.zeros(1,dtype=float); lep4pt=np.zeros(1,dtype=float); lep4eta=np.zeros(1,dtype=float); lep4phi=np.zeros(1,dtype=float); lep4e=np.zeros(1,dtype=float); jet1pt=np.zeros(1,dtype=float); jet1eta=np.zeros(1,dtype=float); jet1phi=np.zeros(1,dtype=float); jet1m=np.zeros(1,dtype=float); jet2pt=np.zeros(1,dtype=float); jet2eta=np.zeros(1,dtype=float); jet2phi=np.zeros(1,dtype=float); jet2m=np.zeros(1,dtype=float); Z1_lep_p_pt=np.zeros(1,dtype=float); Z1_lep_p_eta=np.zeros(1,dtype=float); Z1_lep_p_phi=np.zeros(1,dtype=float); Z1_lep_p_e=np.zeros(1,dtype=float); Z1_lep_m_pt=np.zeros(1,dtype=float); Z1_lep_m_eta=np.zeros(1,dtype=float); Z1_lep_m_phi=np.zeros(1,dtype=float); Z1_lep_m_e=np.zeros(1,dtype=float); Z2_lep_p_pt=np.zeros(1,dtype=float); Z2_lep_p_eta=np.zeros(1,dtype=float); Z2_lep_p_phi=np.zeros(1,dtype=float); Z2_lep_p_e=np.zeros(1,dtype=float); Z2_lep_m_pt=np.zeros(1,dtype=float); Z2_lep_m_eta=np.zeros(1,dtype=float); Z2_lep_m_phi=np.zeros(1,dtype=float); Z2_lep_m_e=np.zeros(1,dtype=float); MET=np.zeros(1,dtype=float); METphi=np.zeros(1,dtype=float); Mll_Z1=np.zeros(1,dtype=float); Mll_Z2=np.zeros(1,dtype=float); Z1_Mt=np.zeros(1,dtype=float); Z2_Mt=np.zeros(1,dtype=float); detall_Z1=np.zeros(1,dtype=float); detall_Z2=np.zeros(1,dtype=float); dphill_Z1=np.zeros(1,dtype=float); dphill_Z2=np.zeros(1,dtype=float); Ptll_Z1=np.zeros(1,dtype=float); Ptll_Z2=np.zeros(1,dtype=float); Ell_Z1=np.zeros(1,dtype=float); Ell_Z2=np.zeros(1,dtype=float); Mllll=np.zeros(1,dtype=float); Mjj=np.zeros(1,dtype=float); Mtjj=np.zeros(1,dtype=float); detajj=np.zeros(1,dtype=float); dphijj=np.zeros(1,dtype=float); Ejj=np.zeros(1,dtype=float); Ptjj=np.zeros(1,dtype=float); Etajj=np.zeros(1,dtype=float); Phijj=np.zeros(1,dtype=float); Tight_Z1_pt=np.zeros(1,dtype=float); Tight_Z1_eta=np.zeros(1,dtype=float); Tight_Z1_phi=np.zeros(1,dtype=float); Tight_Z1_e=np.zeros(1,dtype=float); Tight_Z1_mass=np.zeros(1,dtype=float); Tight_Z2_pt=np.zeros(1,dtype=float); Tight_Z2_eta=np.zeros(1,dtype=float); Tight_Z2_phi=np.zeros(1,dtype=float); Tight_Z2_e=np.zeros(1,dtype=float); Tight_Z2_mass=np.zeros(1,dtype=float); E_ZZ=np.zeros(1,dtype=float); Pt_ZZ=np.zeros(1,dtype=float); M_ZZ=np.zeros(1,dtype=float); EtaZZ=np.zeros(1,dtype=float); PhiZZ=np.zeros(1,dtype=float); dphi_ZZ=np.zeros(1,dtype=float); deta_ZZ=np.zeros(1,dtype=float); Z1Z2jj_pt=np.zeros(1,dtype=float); Z1Z2jj_eta=np.zeros(1,dtype=float); Z1Z2jj_phi=np.zeros(1,dtype=float); Z1Z2jj_M=np.zeros(1,dtype=float); Z1Z2jj_E=np.zeros(1,dtype=float); Zeppen_Z1=np.zeros(1,dtype=float); Zeppen_Z2=np.zeros(1,dtype=float); RpT_jets=np.zeros(1,dtype=float); Rpt_hard=np.zeros(1,dtype=float); Weight=np.zeros(1,dtype=float); ScalarHT=np.zeros(1,dtype=float); LL_Helicity=np.zeros(1,dtype=float); TL_Helicity=np.zeros(1,dtype=float); TT_Helicity=np.zeros(1,dtype=float); tree.Branch('lep1pt',lep1pt,'lep1pt/D'); tree.Branch('lep1eta',lep1eta,'lep1eta/D');tree.Branch('lep1phi',lep1phi,'lep1phi/D');tree.Branch('lep1e',lep1e,'lep1e/D'); tree.Branch('lep2pt',lep2pt,'lep2pt/D'); tree.Branch('lep2eta',lep2eta,'lep2eta/D');tree.Branch('lep2phi',lep2phi,'lep2phi/D');tree.Branch('lep2e',lep2e,'lep2e/D'); tree.Branch('lep3pt',lep3pt,'lep3pt/D'); tree.Branch('lep3eta',lep3eta,'lep3eta/D');tree.Branch('lep3phi',lep3phi,'lep3phi/D');tree.Branch('lep3e',lep3e,'lep3e/D'); tree.Branch('lep4pt',lep4pt,'lep4pt/D'); tree.Branch('lep4eta',lep4eta,'lep4eta/D');tree.Branch('lep4phi',lep4phi,'lep4phi/D');tree.Branch('lep4e',lep4e,'lep4e/D'); tree.Branch('jet1pt',jet1pt,'jet1pt/D'); tree.Branch('jet1eta',jet1eta,'jet1eta/D');tree.Branch('jet1phi',jet1phi,'jet1phi/D');tree.Branch('jet1m',jet1m,'jet1m/D'); tree.Branch('jet2pt',jet2pt,'jet2pt/D'); tree.Branch('jet2eta',jet2eta,'jet2eta/D');tree.Branch('jet2phi',jet2phi,'jet2phi/D');tree.Branch('jet2m',jet2m,'jet2m/D'); tree.Branch('Z1_lep_p_pt',Z1_lep_p_pt,'Z1_lep_p_pt/D'); tree.Branch('Z1_lep_p_eta',Z1_lep_p_eta,'Z1_lep_p_eta/D');tree.Branch('Z1_lep_p_phi',Z1_lep_p_phi,'Z1_lep_p_phi/D');tree.Branch('Z1_lep_p_e',Z1_lep_p_e,'Z1_lep_p_e/D'); tree.Branch('Z1_lep_m_pt',Z1_lep_m_pt,'Z1_lep_m_pt/D'); tree.Branch('Z1_lep_m_eta',Z1_lep_m_eta,'Z1_lep_m_eta/D');tree.Branch('Z1_lep_m_phi',Z1_lep_m_phi,'Z1_lep_m_phi/D');tree.Branch('Z1_lep_m_e',Z1_lep_m_e,'Z1_lep_m_e/D'); tree.Branch('Z2_lep_p_pt',Z2_lep_p_pt,'Z2_lep_p_pt/D'); tree.Branch('Z2_lep_p_eta',Z2_lep_p_eta,'Z2_lep_p_eta/D');tree.Branch('Z2_lep_p_phi',Z2_lep_p_phi,'Z2_lep_p_phi/D');tree.Branch('Z2_lep_p_e',Z2_lep_p_e,'Z2_lep_p_e/D'); tree.Branch('Z2_lep_m_pt',Z2_lep_m_pt,'Z2_lep_m_pt/D'); tree.Branch('Z2_lep_m_eta',Z2_lep_m_eta,'Z2_lep_m_eta/D');tree.Branch('Z2_lep_m_phi',Z2_lep_m_phi,'Z2_lep_m_phi/D');tree.Branch('Z2_lep_m_e',Z2_lep_m_e,'Z2_lep_m_e/D'); tree.Branch('MET',MET,'MET/D'); tree.Branch('METphi',METphi,'METphi/D'); tree.Branch('Mll_Z1',Mll_Z1,'Mll_Z1/D'); tree.Branch('Mll_Z2',Mll_Z2,'Mll_Z2/D');tree.Branch('Z1_Mt',Z1_Mt,'Z1_Mt/D');tree.Branch('Z2_Mt',Z2_Mt,'Z2_Mt/D'); tree.Branch('detall_Z1',detall_Z1,'detall_Z1/D'); tree.Branch('detall_Z2',detall_Z2,'detall_Z2/D');tree.Branch('dphill_Z1',dphill_Z1,'dphill_Z1/D');tree.Branch('dphill_Z2',dphill_Z2,'dphill_Z2/D'); tree.Branch('Ptll_Z1',Ptll_Z1,'Ptll_Z1/D'); tree.Branch('Ptll_Z2',Ptll_Z2,'Ptll_Z2/D');tree.Branch('Ell_Z1',Ell_Z1,'Ell_Z1/D');tree.Branch('Ell_Z2',Ell_Z2,'Ell_Z2/D'); tree.Branch('Mllll',Mllll,'Mllll/D'); tree.Branch('Mjj',Mjj,'Mjj/D'); tree.Branch('Mtjj',Mtjj,'Mtjj/D');tree.Branch('detajj',detajj,'detajj/D');tree.Branch('dphijj',dphijj,'dphijj/D'); tree.Branch('Ejj',Ejj,'Ejj/D'); tree.Branch('Ptjj',Ptjj,'Ptjj/D');tree.Branch('Etajj',Etajj,'Etajj/D');tree.Branch('Phijj',Phijj,'Phijj/D'); tree.Branch('Tight_Z1_pt',Tight_Z1_pt,'Tight_Z1_pt/D'); tree.Branch('Tight_Z1_eta',Tight_Z1_eta,'Tight_Z1_eta/D');tree.Branch('Tight_Z1_phi',Tight_Z1_phi,'Tight_Z1_phi/D');tree.Branch('Tight_Z1_e',Tight_Z1_e,'Tight_Z1_e/D'); tree.Branch('Tight_Z1_mass',Tight_Z1_mass,'Tight_Z1_mass/D'); tree.Branch('Tight_Z2_pt',Tight_Z2_pt,'Tight_Z2_pt/D'); tree.Branch('Tight_Z2_eta',Tight_Z2_eta,'Tight_Z2_eta/D');tree.Branch('Tight_Z2_phi',Tight_Z2_phi,'Tight_Z2_phi/D');tree.Branch('Tight_Z2_e',Tight_Z2_e,'Tight_Z2_e/D'); tree.Branch('Tight_Z2_mass',Tight_Z2_mass,'Tight_Z2_mass/D'); tree.Branch('E_ZZ',E_ZZ,'E_ZZ/D'); tree.Branch('Pt_ZZ',Pt_ZZ,'Pt_ZZ/D');tree.Branch('M_ZZ',M_ZZ,'M_ZZ/D');tree.Branch('EtaZZ',EtaZZ,'EtaZZ/D'); tree.Branch('PhiZZ',PhiZZ,'PhiZZ/D'); tree.Branch('dphi_ZZ',dphi_ZZ,'dphi_ZZ/D');tree.Branch('deta_ZZ',deta_ZZ,'deta_ZZ/D'); tree.Branch('Z1Z2jj_pt',Z1Z2jj_pt,'Z1Z2jj_pt/D'); tree.Branch('Z1Z2jj_eta',Z1Z2jj_eta,'Z1Z2jj_eta/D');tree.Branch('Z1Z2jj_phi',Z1Z2jj_phi,'Z1Z2jj_phi/D');tree.Branch('Z1Z2jj_M',Z1Z2jj_M,'Z1Z2jj_M/D'); tree.Branch('Z1Z2jj_E',Z1Z2jj_E,'Z1Z2jj_E/D'); tree.Branch('Zeppen_Z1',Zeppen_Z1,'Zeppen_Z1/D'); tree.Branch('Zeppen_Z2',Zeppen_Z2,'Zeppen_Z2/D');tree.Branch('RpT_jets',RpT_jets,'RpT_jets/D');tree.Branch('Rpt_hard',Rpt_hard,'Rpt_hard/D'); tree.Branch('Weight',Weight,'Weight/D'); tree.Branch('ScalarHT',ScalarHT,'ScalarHT/D'); tree.Branch('LL_Helicity',LL_Helicity,'LL_Helicity/D'); tree.Branch('TL_Helicity',TL_Helicity,'TL_Helicity/D') tree.Branch('TT_Helicity',TT_Helicity,'TT_Helicity/D') for i in range(len(Selected_Event_list)): lep1pt[0]=Selected_Event_list[i][0]; lep1eta[0]=Selected_Event_list[i][1]; lep1phi[0]=Selected_Event_list[i][2]; lep1e[0]=Selected_Event_list[i][3]; lep2pt[0]=Selected_Event_list[i][4]; lep2eta[0]=Selected_Event_list[i][5]; lep2phi[0]=Selected_Event_list[i][6]; lep2e[0]=Selected_Event_list[i][7]; lep3pt[0]=Selected_Event_list[i][8]; lep3eta[0]=Selected_Event_list[i][9]; lep3phi[0]=Selected_Event_list[i][10]; lep3e[0]=Selected_Event_list[i][11]; lep4pt[0]=Selected_Event_list[i][12]; lep4eta[0]=Selected_Event_list[i][13]; lep4phi[0]=Selected_Event_list[i][14]; lep4e[0]=Selected_Event_list[i][15]; jet1pt[0]=Selected_Event_list[i][16]; jet1eta[0]=Selected_Event_list[i][17]; jet1phi[0]=Selected_Event_list[i][18]; jet1m[0]=Selected_Event_list[i][19]; jet2pt[0]=Selected_Event_list[i][20]; jet2eta[0]=Selected_Event_list[i][21]; jet2phi[0]=Selected_Event_list[i][22]; jet2m[0]=Selected_Event_list[i][23]; Z1_lep_p_pt[0]=Selected_Event_list[i][24]; Z1_lep_p_eta[0]=Selected_Event_list[i][25]; Z1_lep_p_phi[0]=Selected_Event_list[i][26]; Z1_lep_p_e[0]=Selected_Event_list[i][27]; Z1_lep_m_pt[0]=Selected_Event_list[i][28]; Z1_lep_m_eta[0]=Selected_Event_list[i][29]; Z1_lep_m_phi[0]=Selected_Event_list[i][30]; Z1_lep_m_e[0]=Selected_Event_list[i][31]; Z2_lep_p_pt[0]=Selected_Event_list[i][32]; Z2_lep_p_eta[0]=Selected_Event_list[i][33]; Z2_lep_p_phi[0]=Selected_Event_list[i][34]; Z2_lep_p_e[0]=Selected_Event_list[i][35]; Z2_lep_m_pt[0]=Selected_Event_list[i][36]; Z2_lep_m_eta[0]=Selected_Event_list[i][37]; Z2_lep_m_phi[0]=Selected_Event_list[i][38]; Z2_lep_m_e[0]=Selected_Event_list[i][39]; MET[0]=Selected_Event_list[i][40]; METphi[0]=Selected_Event_list[i][41]; Mll_Z1[0]=Selected_Event_list[i][42]; Mll_Z2[0]=Selected_Event_list[i][43]; Z1_Mt[0]=Selected_Event_list[i][44]; Z2_Mt[0]=Selected_Event_list[i][45]; detall_Z1[0]=Selected_Event_list[i][46]; detall_Z2[0]=Selected_Event_list[i][47]; dphill_Z1[0]=Selected_Event_list[i][48]; dphill_Z2[0]=Selected_Event_list[i][49]; Ptll_Z1[0]=Selected_Event_list[i][50]; Ptll_Z2[0]=Selected_Event_list[i][51]; Ell_Z1[0]=Selected_Event_list[i][52]; Ell_Z2[0]=Selected_Event_list[i][53]; Mllll[0]=Selected_Event_list[i][54]; Mjj[0]=Selected_Event_list[i][55]; Mtjj[0]=Selected_Event_list[i][56]; detajj[0]=Selected_Event_list[i][57]; dphijj[0]=Selected_Event_list[i][58]; Ejj[0]=Selected_Event_list[i][59]; Ptjj[0]=Selected_Event_list[i][60]; Etajj[0]=Selected_Event_list[i][61]; Phijj[0]=Selected_Event_list[i][62]; Tight_Z1_pt[0]=Selected_Event_list[i][63]; Tight_Z1_eta[0]=Selected_Event_list[i][64]; Tight_Z1_phi[0]=Selected_Event_list[i][65]; Tight_Z1_e[0]=Selected_Event_list[i][66]; Tight_Z1_mass[0]=Selected_Event_list[i][67]; Tight_Z2_pt[0]=Selected_Event_list[i][68]; Tight_Z2_eta[0]=Selected_Event_list[i][69]; Tight_Z2_phi[0]=Selected_Event_list[i][70]; Tight_Z2_e[0]=Selected_Event_list[i][71]; Tight_Z2_mass[0]=Selected_Event_list[i][72]; E_ZZ[0]=Selected_Event_list[i][73]; Pt_ZZ[0]=Selected_Event_list[i][74]; M_ZZ[0]=Selected_Event_list[i][75]; EtaZZ[0]=Selected_Event_list[i][76]; PhiZZ[0]=Selected_Event_list[i][77]; dphi_ZZ[0]=Selected_Event_list[i][78]; deta_ZZ[0]=Selected_Event_list[i][79]; Z1Z2jj_pt[0]=Selected_Event_list[i][80]; Z1Z2jj_eta[0]=Selected_Event_list[i][81]; Z1Z2jj_phi[0]=Selected_Event_list[i][82]; Z1Z2jj_M[0]=Selected_Event_list[i][83]; Z1Z2jj_E[0]=Selected_Event_list[i][84]; Zeppen_Z1[0]=Selected_Event_list[i][85]; Zeppen_Z2[0]=Selected_Event_list[i][86]; RpT_jets[0]=Selected_Event_list[i][87]; Rpt_hard[0]=Selected_Event_list[i][88]; Weight[0]=Selected_Event_list[i][89]; ScalarHT[0]=Selected_Event_list[i][90]; LL_Helicity[0]=Selected_Event_list[i][91]; TL_Helicity[0]=Selected_Event_list[i][92]; TT_Helicity[0]=Selected_Event_list[i][93]; tree.Fill() outROOT_file.Write() outROOT_file.Close() print("Create Output Ntuple.root :", Outfile)
def PlotProper_YearDATE(filename,title="Development",Xlabel="Date",Ylabel="Object", MSE=1.0): filelist = read_file_name(filename) Col_list = MakeList_column(filelist[2]) #print(len(Col_list)) Y_data = [] nomi_X_date = [] List_x = []; temp_x = [] error_low = []; error_high = []; error_2low = []; error_2high = []; sqrt_MSE = math.sqrt(MSE) MIN_Y=0; MAX_Y=0 for i in range(len(Col_list[1])): if(i==0): continue if(i > 1): if float(Col_list[1][i])>MAX_Y: MAX_Y = float(Col_list[1][i]) if float(Col_list[1][i])<MIN_Y: MIN_Y = float(Col_list[1][i]) Y_data.append(float(Col_list[1][i])) error_low.append(float(Col_list[1][i])-sqrt_MSE); error_2low.append(float(Col_list[1][i])-2*sqrt_MSE) error_high.append(float(Col_list[1][i])+sqrt_MSE);error_2high.append(float(Col_list[1][i])+2*sqrt_MSE) nomi_X_date.append(float(Col_list[0][i])) List_x.append(str(int(Col_list[0][i]))) temp_x.append(i-1) if(i==1): MIN_Y = float(Col_list[1][i]) MAX_Y = float(Col_list[1][i]) RANGE_Y = (MAX_Y - MIN_Y)/5 plt.grid(True) plt.plot(Y_data,'b^:') #plt.fill_between(temp_x,error_2low,error_2high,edgecolor='#FF9848', facecolor='#FF9848') plt.fill_between(temp_x,error_low,error_high,edgecolor='#7EFF99', facecolor='#7EFF99') #plt.fill_between(temp_x,error_2low,error_2high,edgecolor='#CC4F1B', facecolor='#FF9848') plt.plot([18,19,20,21],[23.69,23.08,26.17,24.72],'r^-') #Manually input real 2014,2015,2016,2017 DATA #plt.plot(temp_x,'r:') plt.title(title) plt.xlabel(Xlabel,fontsize=16,color='r'); plt.ylabel(Ylabel,fontsize=16,color='r') plt.axis([-1,len(Col_list[1])-1,0,MAX_Y+RANGE_Y]) #plt.xticks(np.arange(len(Col_list[1])),('Tom', '', '', '', 'Sue')) if(len(Col_list[1]) < 10): plt.xticks(np.arange(len(Col_list[1]),nomi_X_date)) else: XTicks = [] tot_len = len(nomi_X_date) for i in range(tot_len): if(i==0): XTicks.append(List_x[i]) elif(i == int(tot_len/4)): XTicks.append(List_x[i]) elif(i == int(tot_len/2)): XTicks.append(List_x[i]) elif(i == int(3*tot_len/4)): XTicks.append(List_x[i]) elif(i == int(tot_len)-1): XTicks.append(List_x[i]) break else: XTicks.append("") plt.xticks(np.arange(len(Col_list[1])),XTicks) #plt.legend(["Predicted PM2.5","Recorded PM2.5",r"$2 \sigma$ Error band", r"$1 \sigma$ Error band"]) #plt.legend(["Predicted PM2.5","Recorded PM2.5",r"$1 \sigma$ Error band"]) #plt.legend(["PM2.5 Estimated","PM2.5 Recorded",r"$\sqrt{MSE}$ Estimated"]) plt.legend(["PM2.5 Estimated","PM2.5 Recorded","Error Estimated"],prop={'size': 12}) plt.show()
def MakeMonthlyDate_BaseOnDailyDate(infilename="test.txt"): filename_list = read_file_name(infilename) infile = filename_list[2] outfile = infile outfile = outfile.replace(".txt", "") outfile = outfile.replace("_Daily", "") outfile = outfile + "_Monthly.txt" row_list = MakeList(infile) return_list = [] return_list.append(row_list[0]) refresh_date_flag = 1 for i in range(len(row_list)): temp_list = [] if (i == 0): continue if ((i == 1) | (refresh_date_flag == 0)): first_list = [] iterated_num = 1 month_date = row_list[i][0][:6] refresh_date_flag = 1 temp_list.append(month_date) for j in range((len(row_list[0]) - 1)): temp_list.append(row_list[i][j + 1]) first_list = temp_list # print(first_list) continue if (row_list[i][0][:6] == month_date): for j in range((len(row_list[0]))): if (j == 0): temp_list.append(row_list[i][0][:6]) else: calc = float(first_list[j]) + float(row_list[i][j]) #calc = "%0.3f"%calc; str_calc = str(calc) temp_list.append(calc) first_list = temp_list iterated_num = iterated_num + 1 # print(first_list) if ((i == len(row_list) - 1)): return_temp_list = [] for k in range(len(first_list)): if k == 0: return_temp_list.append(first_list[0]) else: calc = float(first_list[k]) / float(iterated_num) calc = "%0.4f" % calc str_calc = str(calc) return_temp_list.append(str_calc) return_list.append(return_temp_list) break if (row_list[i + 1][0][:6] != month_date): return_temp_list = [] refresh_date_flag = 0 for k in range(len(first_list)): if k == 0: return_temp_list.append(first_list[0]) else: calc = float(first_list[k]) / float(iterated_num) calc = "%0.4f" % calc str_calc = str(calc) return_temp_list.append(str_calc) return_list.append(return_temp_list) # print(return_list) MAKE_TXT(return_list, outfile) print("created file name : ", outfile) return outfile
def Make_simulation(self, infilename, EventNum=100): Filelist = read_file_name(infilename) pick_all = input("Do you want to Make All MC? (Y/N)\n") pick_all = pick_all.lower() print(" * Input file name :", Filelist[2]) if (pick_all != "y"): Make_MC = PICKING_BRANCH_n_SAVING(Filelist[2]) print(" * Tempary produce file :", Make_MC[0]) print(" * Going to make MC for", Make_MC[1]) INPUT = Make_MC[0] else: INPUT = Filelist[2] data_col_list = MakeList_column(INPUT) sorted_col_list = [] DATA_LIST = [] DATA_NAME_LIST = [] for i in range(len(data_col_list)): temp_list = [] for j in range(len(data_col_list[i])): if (j == 0): DATA_NAME_LIST.append(data_col_list[i][j]) continue temp_t = float(data_col_list[i][j]) temp_list.append(temp_t) temp_list.sort() sorted_col_list.append(temp_list) # print(sorted_col_list) DATA_LIST.append(DATA_NAME_LIST) for i in range(EventNum): if (i % 1000 == 0): print("Now looping", i, "th event") temp_list1 = [] for j in range(len(sorted_col_list)): px = random.random() Num = len(sorted_col_list[j]) float_Num = float(Num) prob = 1.0 / float_Num th_num = 0 th_flag = 0 while (th_flag == 0): if (px > (th_num * prob)): # if(0 > (th_num * prob)): # if(1 > (th_num * prob)): th_num = th_num + 1 else: th_flag = 1 #th_num = th_num +1 if (th_num >= len(sorted_col_list[j])): th_num = len(sorted_col_list[j]) - 1 th_num = th_num Estimate = (px - float(th_num - 1) / float(Num)) * float( Num) * (sorted_col_list[j][th_num] - sorted_col_list[j][ th_num - 1]) + sorted_col_list[j][th_num - 1] temp_list1.append(Estimate) # print(th_num, sorted_col_list[j][th_num-1],Estimate, sorted_col_list[j][th_num] ) DATA_LIST.append(temp_list1) # print(DATA_LIST) Write_MC_File = Filelist[3] + Filelist[0] + "_MC.txt" self.Write_list = DATA_LIST self.Write_file = Write_MC_File #print(self.Write_file) if (pick_all != "y"): remove_command = "rm -rf " + INPUT os.system(remove_command) print(" * Removing Tempary file", INPUT) self.MakeMCFile_UseRowList()