Tree Prozessieren/Selektion in Python

In Python lässt sich Prozessieren von Trees und Selektion sehr einfach erledigen:


import ROOT

# open file on wbe server
myf = ROOT.TFile.Open("http://www.etp.physik.uni-muenchen.de/kurs/comp10/uebungen/Z0-Versuch/data/ntz0mhmc.root")

# retrieve tree
mychain = ROOT.gROOT.FindObject( "h5000" )

# N events
nentries = mychain.GetEntriesFast()
print (nentries , " Events in Tree " )

hnct = ROOT.TH1F("hnct","Ncharged",50,0,50)

# loop over tree
i=0
for x in mychain: #  event features attached to x in each iteration

    i += 1

    if i<=20: # print some info for 1st 20 entries 
        print x.Event, x.Ncharged, x.E_ecal

    hnct.Fill( x.Ncharged ) # fill Ncharged histo
#
hnct.Draw() # draw hist when done