Source code for rootpy.data.dataset

from collections import namedtuple


Namedset = namedtuple('Namedset', 'name title label tags meta properties')


Dataset = namedtuple('Dataset', Namedset._fields + ('datatype', 'classtype', 'weight'))


[docs]class Fileset(namedtuple('Fileset', Dataset._fields + ('files', 'treename'))):
[docs] def split(self, partitions): files = self.files[:] fileset_files = [[] for _ in xrange(partitions)] while len(files) > 0: for fileset in fileset_files: if len(files) > 0: fileset.append(files.pop(0)) else: break mydict = self._asdict() filesets = [] for fileset in fileset_files: mydict['files'] = fileset filesets.append(Fileset(**mydict)) return filesets
[docs]class Treeset(namedtuple('Treeset', Dataset._fields + ('trees',))):
[docs] def GetEntries(self, *args, **kwargs): return sum([tree.GetEntries(*args, **kwargs) for tree in self.trees])
[docs] def Scale(self, value): for tree in self.trees: tree.Scale(value)
def __iter__(self): for tree in self.trees: yield tree
[docs] def Draw(self, *args, **kwargs): for tree in self.trees: tree.Draw(*args, **kwargs)