Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RooDataSet Class Reference

RooDataSet is a container class to hold unbinned data.

The binned equivalent is RooDataHist. In RooDataSet, each data point in N-dimensional space is represented by a RooArgSet of RooRealVar, RooCategory or RooStringVar objects, which can be retrieved using get().

Since RooDataSet saves every event, it allows for fits with highest precision. With a large amount of data, however, it could be beneficial to represent them in binned form, i.e., RooDataHist. Binning the data will incur a loss of information, though. RooDataHist on the other hand may suffer from the curse of dimensionality if a high-dimensional problem with a lot of bins on each axis is tackled.

Inspecting a dataset

Inspect a dataset using Print() with the "verbose" option:

dataset->Print("V");
dataset->get(0)->Print("V");
dataset->get(1)->Print("V");
...

Plotting data.

See RooAbsData::plotOn().

Storage strategy

There are two storage backends:

For the inverse conversion, see RooAbsData::convertToVectorStore().

Creating a dataset using RDataFrame

See also
RooAbsDataHelper, rf408_RDataFrameToRooFit.C

PyROOT

Some member functions of RooDataSet that take a RooCmdArg as argument also support keyword arguments. So far, this applies to RooDataSet() constructor and RooDataSet::plotOnXY. For example, the following code is equivalent in PyROOT:

# Directly passing a RooCmdArg:
dxy = ROOT.RooDataSet("dxy", "dxy", ROOT.RooArgSet(x, y), ROOT.RooFit.StoreError(ROOT.RooArgSet(x, y)))
# With keyword arguments:
dxy = ROOT.RooDataSet("dxy", "dxy", ROOT.RooArgSet(x, y), StoreError=(ROOT.RooArgSet(x, y)))

Definition at line 36 of file RooDataSet.h.

Public Member Functions

 RooDataSet ()
 Default constructor for persistence.
 
 RooDataSet (RooDataSet const &other, const char *newname=0)
 Copy constructor.
 
 RooDataSet (std::string_view name, std::string_view title, const RooArgSet &vars, const char *wgtVarName=0)
 Constructor of an empty data set from a RooArgSet defining the dimensions of the data space.
 
 RooDataSet (std::string_view name, std::string_view title, const RooArgSet &vars, const RooCmdArg &arg1, const RooCmdArg &arg2=RooCmdArg(), const RooCmdArg &arg3=RooCmdArg(), const RooCmdArg &arg4=RooCmdArg(), const RooCmdArg &arg5=RooCmdArg(), const RooCmdArg &arg6=RooCmdArg(), const RooCmdArg &arg7=RooCmdArg(), const RooCmdArg &arg8=RooCmdArg())
 Construct an unbinned dataset from a RooArgSet defining the dimensions of the data space.
 
 RooDataSet (std::string_view name, std::string_view title, RooDataSet *data, const RooArgSet &vars, const char *cuts=0, const char *wgtVarName=0)
 Constructor of a data set from (part of) an existing data set.
 
 RooDataSet (std::string_view name, std::string_view title, RooDataSet *data, const RooArgSet &vars, const RooFormulaVar &cutVar, const char *wgtVarName=0)
 Constructor of a data set from (part of) an existing data set.
 
 RooDataSet (std::string_view name, std::string_view title, TTree *tree, const RooArgSet &vars, const char *cuts=0, const char *wgtVarName=0)
 Constructor of a data set from (part of) a ROOT TTree.
 
 RooDataSet (std::string_view name, std::string_view title, TTree *tree, const RooArgSet &vars, const RooFormulaVar &cutVar, const char *wgtVarName=0)
 Constructor of a data set from (part of) an ROOT TTRee.
 
virtual ~RooDataSet ()
 Destructor.
 
virtual void add (const RooArgSet &row, Double_t weight, Double_t weightErrorLo, Double_t weightErrorHi)
 Add a data point, with its coordinates specified in the 'data' argset, to the data set.
 
virtual void add (const RooArgSet &row, Double_t weight=1.0, Double_t weightError=0) override
 Add a data point, with its coordinates specified in the 'data' argset, to the data set.
 
virtual RooAbsArgaddColumn (RooAbsArg &var, Bool_t adjustRange=kTRUE)
 Add a column with the values of the given (function) argument to this dataset.
 
virtual RooArgSetaddColumns (const RooArgList &varList)
 Add a column with the values of the given list of (function) argument to this dataset.
 
virtual void addFast (const RooArgSet &row, Double_t weight=1.0, Double_t weightError=0)
 Add a data point, with its coordinates specified in the 'data' argset, to the data set.
 
void append (RooDataSet &data)
 Add all data points of given data set to this data set.
 
RooDataHistbinnedClone (const char *newName=0, const char *newTitle=0) const
 Return binned clone of this dataset.
 
virtual TObjectClone (const char *newname="") const override
 Make a clone of an object using the Streamer facility.
 
void convertToTreeStore () override
 Convert vector-based storage to tree-based storage.
 
TH1createHistogram (const char *name, const RooAbsRealLValue &xvar, const RooCmdArg &arg1=RooCmdArg::none(), const RooCmdArg &arg2=RooCmdArg::none(), const RooCmdArg &arg3=RooCmdArg::none(), const RooCmdArg &arg4=RooCmdArg::none(), const RooCmdArg &arg5=RooCmdArg::none(), const RooCmdArg &arg6=RooCmdArg::none(), const RooCmdArg &arg7=RooCmdArg::none(), const RooCmdArg &arg8=RooCmdArg::none()) const
 Calls createHistogram(const char *name, const RooAbsRealLValue& xvar, const RooLinkedList& argList) const.
 
TH1createHistogram (const char *name, const RooAbsRealLValue &xvar, const RooLinkedList &argList) const
 Create and fill a ROOT histogram TH1,TH2 or TH3 with the values of this dataset.
 
TH1createHistogram (const char *varNameList, Int_t xbins=0, Int_t ybins=0, Int_t zbins=0) const
 Create and fill a ROOT histogram TH1,TH2 or TH3 with the values of this dataset for the variables with given names The range of each observable that is histogrammed is always automatically calculated from the distribution in the dataset.
 
TH2FcreateHistogram (const RooAbsRealLValue &var1, const RooAbsRealLValue &var2, const char *cuts="", const char *name="hist") const
 Create a TH2F histogram of the distribution of the specified variable using this dataset.
 
TH2FcreateHistogram (const RooAbsRealLValue &var1, const RooAbsRealLValue &var2, Int_t nx, Int_t ny, const char *cuts="", const char *name="hist") const
 Create a TH2F histogram of the distribution of the specified variable using this dataset.
 
virtual RooAbsDataemptyClone (const char *newName=0, const char *newTitle=0, const RooArgSet *vars=0, const char *wgtVarName=0) const override
 Return an empty clone of this dataset.
 
virtual const RooArgSetget () const override
 Return a RooArgSet with the coordinates of the current event.
 
virtual const RooArgSetget (Int_t index) const override
 Return RooArgSet with coordinates of event 'index'.
 
virtual RooSpan< const doublegetWeightBatch (std::size_t first, std::size_t len, bool sumW2) const override
 
virtual Bool_t isNonPoissonWeighted () const override
 Returns true if histogram contains bins with entries with a non-integer weight.
 
virtual Bool_t isWeighted () const override
 Return true if dataset contains weighted events.
 
Bool_t merge (RooDataSet *data1, RooDataSet *data2=0, RooDataSet *data3=0, RooDataSet *data4=0, RooDataSet *data5=0, RooDataSet *data6=0)
 
Bool_t merge (std::list< RooDataSet * > dsetList)
 Merge columns of supplied data set(s) with this data set.
 
void operator delete (void *ptr)
 
voidoperator new (size_t bytes)
 
virtual RooPlotplotOnXY (RooPlot *frame, const RooCmdArg &arg1=RooCmdArg::none(), const RooCmdArg &arg2=RooCmdArg::none(), const RooCmdArg &arg3=RooCmdArg::none(), const RooCmdArg &arg4=RooCmdArg::none(), const RooCmdArg &arg5=RooCmdArg::none(), const RooCmdArg &arg6=RooCmdArg::none(), const RooCmdArg &arg7=RooCmdArg::none(), const RooCmdArg &arg8=RooCmdArg::none()) const
 Special plot method for 'X-Y' datasets used in \( \chi^2 \) fitting.
 
virtual void printArgs (std::ostream &os) const override
 Print argument of dataset, i.e. the observable names.
 
void printMultiline (std::ostream &os, Int_t contents, Bool_t verbose=kFALSE, TString indent="") const override
 Print info about this dataset to the specified output stream.
 
virtual void printValue (std::ostream &os) const override
 Print value of the dataset, i.e. the sum of weights contained in the dataset.
 
void SetName (const char *name) override
 Change the name of this dataset into the given name.
 
void SetNameTitle (const char *name, const char *title) override
 Change the title of this dataset into the given name.
 
virtual Double_t sumEntries () const override
 Return effective number of entries in dataset, i.e., sum all weights.
 
virtual Double_t sumEntries (const char *cutSpec, const char *cutRange=0) const override
 Return the sum of weights in all entries matching cutSpec (if specified) and in named range cutRange (if specified)
 
virtual Double_t weight () const override
 Return event weight of current event.
 
virtual void weightError (double &lo, double &hi, ErrorType etype=SumW2) const override
 Return the asymmetric errors on the current weight.
 
double weightError (ErrorType etype=SumW2) const override
 
virtual Double_t weightSquared () const override
 Return squared event weight of current event.
 
RooRealVarweightVar () const
 Returns a pointer to the weight variable (if set).
 
Bool_t write (const char *filename) const
 Write the contents of this dataset to an ASCII file with the specified name.
 
Bool_t write (std::ostream &ofs) const
 Write the contents of this dataset to the stream.
 
- Public Member Functions inherited from RooAbsData
 RooAbsData ()
 Default constructor.
 
 RooAbsData (const RooAbsData &other, const char *newname=0)
 Copy constructor.
 
 RooAbsData (std::string_view name, std::string_view title, const RooArgSet &vars, RooAbsDataStore *store=0)
 Constructor from a set of variables.
 
virtual ~RooAbsData ()
 Destructor.
 
void addOwnedComponent (const char *idxlabel, RooAbsData &data)
 
void attachBuffers (const RooArgSet &extObs)
 
Bool_t canSplitFast () const
 
virtual Bool_t changeObservableName (const char *from, const char *to)
 
void checkInit () const
 
void convertToVectorStore ()
 Convert tree-based storage to vector-based storage.
 
Double_t correlation (RooRealVar &x, RooRealVar &y, const char *cutSpec=0, const char *cutRange=0) const
 
TMatrixDSymcorrelationMatrix (const char *cutSpec=0, const char *cutRange=0) const
 
TMatrixDSymcorrelationMatrix (const RooArgList &vars, const char *cutSpec=0, const char *cutRange=0) const
 
Double_t covariance (RooRealVar &x, RooRealVar &y, const char *cutSpec=0, const char *cutRange=0) const
 
TMatrixDSymcovarianceMatrix (const char *cutSpec=0, const char *cutRange=0) const
 
TMatrixDSymcovarianceMatrix (const RooArgList &vars, const char *cutSpec=0, const char *cutRange=0) const
 
TH1createHistogram (const char *name, const RooAbsRealLValue &xvar, const RooCmdArg &arg1=RooCmdArg::none(), const RooCmdArg &arg2=RooCmdArg::none(), const RooCmdArg &arg3=RooCmdArg::none(), const RooCmdArg &arg4=RooCmdArg::none(), const RooCmdArg &arg5=RooCmdArg::none(), const RooCmdArg &arg6=RooCmdArg::none(), const RooCmdArg &arg7=RooCmdArg::none(), const RooCmdArg &arg8=RooCmdArg::none()) const
 Calls createHistogram(const char *name, const RooAbsRealLValue& xvar, const RooLinkedList& argList) const.
 
TH1createHistogram (const char *name, const RooAbsRealLValue &xvar, const RooLinkedList &argList) const
 Create and fill a ROOT histogram TH1,TH2 or TH3 with the values of this dataset.
 
TH1createHistogram (const char *varNameList, Int_t xbins=0, Int_t ybins=0, Int_t zbins=0) const
 Create and fill a ROOT histogram TH1,TH2 or TH3 with the values of this dataset for the variables with given names The range of each observable that is histogrammed is always automatically calculated from the distribution in the dataset.
 
virtual Int_t defaultPrintContents (Option_t *opt) const
 Define default print options, for a given print style.
 
virtual void Draw (Option_t *option="")
 Forward draw command to data store.
 
virtual void fill ()
 
virtual TH1fillHistogram (TH1 *hist, const RooArgList &plotVars, const char *cuts="", const char *cutRange=0) const
 Loop over columns of our tree data and fill the input histogram.
 
RealSpans getBatches (std::size_t first=0, std::size_t len=std::numeric_limits< std::size_t >::max()) const
 Write information to retrieve data columns into evalData.spans.
 
CategorySpans getCategoryBatches (std::size_t first=0, std::size_t len=std::numeric_limits< std::size_t >::max()) const
 
TTreeGetClonedTree () const
 Return a clone of the TTree which stores the data or create such a tree if vector storage is used.
 
RooArgSet const * getGlobalObservables () const
 Returns snapshot of global observables stored in this data.
 
Bool_t getRange (const RooAbsRealLValue &var, Double_t &lowest, Double_t &highest, Double_t marginFrac=0, Bool_t symMode=kFALSE) const
 Fill Doubles 'lowest' and 'highest' with the lowest and highest value of observable 'var' in this dataset.
 
RooAbsDatagetSimData (const char *idxstate)
 
Bool_t hasFilledCache () const
 
Double_t kurtosis (const RooRealVar &var, const char *cutSpec=0, const char *cutRange=0) const
 
Double_t mean (const RooRealVar &var, const char *cutSpec=0, const char *cutRange=0) const
 
RooRealVarmeanVar (const RooRealVar &var, const char *cutSpec=0, const char *cutRange=0) const
 Create a RooRealVar containing the mean of observable 'var' in this dataset.
 
Double_t moment (const RooRealVar &var, Double_t order, const char *cutSpec=0, const char *cutRange=0) const
 Calculate moment of requested order.
 
Double_t moment (const RooRealVar &var, Double_t order, Double_t offset, const char *cutSpec=0, const char *cutRange=0) const
 Return the 'order'-ed moment of observable 'var' in this dataset.
 
const TNamednamePtr () const
 De-duplicated pointer to this object's name.
 
virtual Int_t numEntries () const
 Return number of entries in dataset, i.e., count unweighted entries.
 
RooAbsDataoperator= (const RooAbsData &other)
 
virtual RooPlotplotOn (RooPlot *frame, const RooCmdArg &arg1=RooCmdArg::none(), const RooCmdArg &arg2=RooCmdArg::none(), const RooCmdArg &arg3=RooCmdArg::none(), const RooCmdArg &arg4=RooCmdArg::none(), const RooCmdArg &arg5=RooCmdArg::none(), const RooCmdArg &arg6=RooCmdArg::none(), const RooCmdArg &arg7=RooCmdArg::none(), const RooCmdArg &arg8=RooCmdArg::none()) const
 
virtual RooPlotplotOn (RooPlot *frame, const RooLinkedList &cmdList) const
 Plot dataset on specified frame.
 
virtual void Print (Option_t *options=0) const
 Print TNamed name and title.
 
virtual void printClassName (std::ostream &os) const
 Print class name of dataset.
 
virtual void printName (std::ostream &os) const
 Print name of dataset.
 
virtual void printTitle (std::ostream &os) const
 Print title of dataset.
 
virtual void RecursiveRemove (TObject *obj)
 If one of the TObject we have a referenced to is deleted, remove the reference.
 
RooAbsDatareduce (const char *cut)
 Create a subset of the data set by applying the given cut on the data points.
 
RooAbsDatareduce (const RooArgSet &varSubset, const char *cut=0)
 Create a subset of the data set by applying the given cut on the data points and reducing the dimensions to the specified set.
 
RooAbsDatareduce (const RooArgSet &varSubset, const RooFormulaVar &cutVar)
 Create a subset of the data set by applying the given cut on the data points and reducing the dimensions to the specified set.
 
RooAbsDatareduce (const RooCmdArg &arg1, const RooCmdArg &arg2=RooCmdArg(), const RooCmdArg &arg3=RooCmdArg(), const RooCmdArg &arg4=RooCmdArg(), const RooCmdArg &arg5=RooCmdArg(), const RooCmdArg &arg6=RooCmdArg(), const RooCmdArg &arg7=RooCmdArg(), const RooCmdArg &arg8=RooCmdArg())
 Create a reduced copy of this dataset.
 
RooAbsDatareduce (const RooFormulaVar &cutVar)
 Create a subset of the data set by applying the given cut on the data points.
 
virtual void reset ()
 
void resetBuffers ()
 
RooRealVarrmsVar (const RooRealVar &var, const char *cutSpec=0, const char *cutRange=0) const
 Create a RooRealVar containing the RMS of observable 'var' in this dataset.
 
void setDirtyProp (Bool_t flag)
 Control propagation of dirty flags from observables in dataset.
 
void setGlobalObservables (RooArgSet const &globalObservables)
 Sets the global observables stored in this data.
 
Double_t sigma (const RooRealVar &var, const char *cutSpec=0, const char *cutRange=0) const
 
Double_t skewness (const RooRealVar &var, const char *cutSpec=0, const char *cutRange=0) const
 
virtual TListsplit (const RooAbsCategory &splitCat, Bool_t createEmptyDataSets=kFALSE) const
 Split dataset into subsets based on states of given splitCat in this dataset.
 
virtual TListsplit (const RooSimultaneous &simpdf, Bool_t createEmptyDataSets=kFALSE) const
 Split dataset into subsets based on the categorisation of the RooSimultaneous A TList of RooDataSets is returned in which each RooDataSet is named after the state name of splitCat of which it contains the dataset subset.
 
Double_t standMoment (const RooRealVar &var, Double_t order, const char *cutSpec=0, const char *cutRange=0) const
 Calculate standardized moment.
 
virtual RooPlotstatOn (RooPlot *frame, const char *what, const char *label="", Int_t sigDigits=2, Option_t *options="NELU", Double_t xmin=0.15, Double_t xmax=0.65, Double_t ymax=0.85, const char *cutSpec=0, const char *cutRange=0, const RooCmdArg *formatCmd=0)
 Implementation back-end of statOn() method with named arguments.
 
virtual RooPlotstatOn (RooPlot *frame, const RooCmdArg &arg1=RooCmdArg::none(), const RooCmdArg &arg2=RooCmdArg::none(), const RooCmdArg &arg3=RooCmdArg::none(), const RooCmdArg &arg4=RooCmdArg::none(), const RooCmdArg &arg5=RooCmdArg::none(), const RooCmdArg &arg6=RooCmdArg::none(), const RooCmdArg &arg7=RooCmdArg::none(), const RooCmdArg &arg8=RooCmdArg::none())
 Add a box with statistics information to the specified frame.
 
RooAbsDataStorestore ()
 
const RooAbsDataStorestore () const
 
double sumEntriesW2 () const
 Return sum of squared weights of this data.
 
virtual Roo1DTabletable (const RooAbsCategory &cat, const char *cuts="", const char *opts="") const
 Create and fill a 1-dimensional table for given category column This functions is the equivalent of plotOn() for category dimensions.
 
virtual Roo1DTabletable (const RooArgSet &catSet, const char *cuts="", const char *opts="") const
 Construct table for product of categories in catSet.
 
const TTreetree () const
 Return a pointer to the TTree which stores the data.
 
virtual Bool_t valid () const
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TNamed &named)
 TNamed copy ctor.
 
 TNamed (const TString &name, const TString &title)
 
virtual ~TNamed ()
 TNamed destructor.
 
virtual void Clear (Option_t *option="")
 Set name and title to empty strings ("").
 
virtual Int_t Compare (const TObject *obj) const
 Compare two TNamed objects.
 
virtual void Copy (TObject &named) const
 Copy this to obj.
 
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer.
 
virtual const char * GetName () const
 Returns name of object.
 
virtual const char * GetTitle () const
 Returns title of object.
 
virtual ULong_t Hash () const
 Return hash value for this object.
 
virtual Bool_t IsSortable () const
 
virtual void ls (Option_t *option="") const
 List TNamed name and title.
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator.
 
virtual void SetTitle (const char *title="")
 Set the title of the TNamed.
 
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject.
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor.
 
 TObject (const TObject &object)
 TObject copy ctor.
 
virtual ~TObject ()
 TObject destructor.
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract.
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad.
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action.
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs.
 
virtual void Delete (Option_t *option="")
 Delete this object.
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object.
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs.
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad).
 
virtual void Dump () const
 Dump contents of object on stdout.
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message.
 
virtual void Execute (const char *method, const char *params, Int_t *error=0)
 Execute method on this object with the given parameter string, e.g.
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 Execute method on this object with parameters stored in the TObjArray.
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py).
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message.
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes.
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes.
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object.
 
virtual const char * GetIconName () const
 Returns mime type name of object.
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py).
 
virtual Option_tGetOption () const
 
virtual UInt_t GetUniqueID () const
 Return the unique object id.
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out.
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message.
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname".
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl.
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas.
 
void InvertBit (UInt_t f)
 
Bool_t IsDestructed () const
 IsDestructed.
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory).
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary).
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification.
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete.
 
void operator delete (void *ptr)
 Operator delete.
 
void operator delete[] (void *ptr)
 Operator delete [].
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator.
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself.
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list.
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory.
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename.
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out".
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f.
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object.
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id.
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message.
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked.
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message.
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory.
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory.
 
- Public Member Functions inherited from RooPrintable
 RooPrintable ()
 
virtual ~RooPrintable ()
 
virtual StyleOption defaultPrintStyle (Option_t *opt) const
 
virtual void printAddress (std::ostream &os) const
 Print class name of object.
 
virtual void printExtras (std::ostream &os) const
 Interface to print extras of object.
 
virtual void printStream (std::ostream &os, Int_t contents, StyleOption style, TString indent="") const
 Print description of object on ostream, printing contents set by contents integer, which is interpreted as an OR of 'enum ContentsOptions' values and in the style given by 'enum StyleOption'.
 
virtual void printTree (std::ostream &os, TString indent="") const
 Interface for tree structure printing of object.
 
- Public Member Functions inherited from RooDirItem
 RooDirItem ()
 
 RooDirItem (const RooDirItem &)
 
virtual ~RooDirItem ()
 

Static Public Member Functions

static void cleanup ()
 
static RooDataSetread (const char *filename, const RooArgList &variables, const char *opts="", const char *commonPath="", const char *indexCatName=0)
 Read given list of ascii files, and construct a data set, using the given ArgList as structure definition.
 
- Static Public Member Functions inherited from RooAbsData
static void claimVars (RooAbsData *)
 
static StorageType getDefaultStorageType ()
 
static Bool_t releaseVars (RooAbsData *)
 If return value is true variables can be deleted.
 
static void setDefaultStorageType (StorageType s)
 
- Static Public Member Functions inherited from TObject
static Longptr_t GetDtorOnly ()
 Return destructor only flag.
 
static Bool_t GetObjectStat ()
 Get status of object stat flag.
 
static void SetDtorOnly (void *obj)
 Set destructor only flag.
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable.
 
- Static Public Member Functions inherited from RooPrintable
static std::ostream & defaultPrintStream (std::ostream *os=0)
 Return a reference to the current default stream to use in Print().
 
static void nameFieldLength (Int_t newLen)
 Set length of field reserved from printing name of RooAbsArgs in multi-line collection printing to given amount.
 

Protected Member Functions

 RooDataSet (std::string_view name, std::string_view title, RooDataSet *ntuple, const RooArgSet &vars, const RooFormulaVar *cutVar, const char *cutRange, std::size_t nStart, std::size_t nStop, Bool_t copyCache, const char *wgtVarName=0)
 Protected constructor for internal use only.
 
RooArgSet addWgtVar (const RooArgSet &origVars, const RooAbsArg *wgtVar)
 Helper function for constructor that adds optional weight variable to construct total set of observables.
 
virtual RooAbsDatacacheClone (const RooAbsArg *newCacheOwner, const RooArgSet *newCacheVars, const char *newName=0) override
 Return a clone of this dataset containing only the cached variables.
 
void initialize (const char *wgtVarName)
 Initialize the dataset.
 
RooAbsDatareduceEng (const RooArgSet &varSubset, const RooFormulaVar *cutVar, const char *cutRange=0, std::size_t nStart=0, std::size_t nStop=std::numeric_limits< std::size_t >::max(), Bool_t copyCache=kTRUE) override
 Implementation of RooAbsData virtual method that drives the RooAbsData::reduce() methods.
 
- Protected Member Functions inherited from RooAbsData
Bool_t allClientsCached (RooAbsArg *, const RooArgSet &)
 Utility function that determines if all clients of object 'var' appear in given list of cached nodes.
 
virtual void attachCache (const RooAbsArg *newOwner, const RooArgSet &cachedVars)
 Internal method – Attach dataset copied with cache contents to copied instances of functions.
 
virtual void cacheArgs (const RooAbsArg *owner, RooArgSet &varSet, const RooArgSet *nset=0, Bool_t skipZeroWeights=kFALSE)
 Internal method – Cache given set of functions with data.
 
Double_t corrcov (const RooRealVar &x, const RooRealVar &y, const char *cutSpec, const char *cutRange, Bool_t corr) const
 Internal method to calculate single correlation and covariance elements.
 
TMatrixDSymcorrcovMatrix (const RooArgList &vars, const char *cutSpec, const char *cutRange, Bool_t corr) const
 Return covariance matrix from data for given list of observables.
 
RooRealVardataRealVar (const char *methodname, const RooRealVar &extVar) const
 Internal method to check if given RooRealVar maps to a RooRealVar in this dataset.
 
virtual void optimizeReadingWithCaching (RooAbsArg &arg, const RooArgSet &cacheList, const RooArgSet &keepObsList)
 Prepare dataset for use with cached constant terms listed in 'cacheList' of expression 'arg'.
 
virtual RooPlotplotAsymOn (RooPlot *frame, const RooAbsCategoryLValue &asymCat, PlotOpt o) const
 Create and fill a histogram with the asymmetry N[+] - N[-] / ( N[+] + N[-] ), where N(+/-) is the number of data points with asymCat=+1 and asymCat=-1 as function of the frames variable.
 
virtual RooPlotplotEffOn (RooPlot *frame, const RooAbsCategoryLValue &effCat, PlotOpt o) const
 Create and fill a histogram with the efficiency N[1] / ( N[1] + N[0] ), where N(1/0) is the number of data points with effCat=1 and effCat=0 as function of the frames variable.
 
virtual RooPlotplotOn (RooPlot *frame, PlotOpt o) const
 Create and fill a histogram of the frame's variable and append it to the frame.
 
virtual void resetCache ()
 Internal method – Remove cached function values.
 
virtual void setArgStatus (const RooArgSet &set, Bool_t active)
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected).
 
void MakeZombie ()
 
- Protected Member Functions inherited from RooDirItem
void appendToDir (TObject *obj, Bool_t forceMemoryResident=kFALSE)
 Append object to directory.
 
void removeFromDir (TObject *obj)
 Remove object from directory it was added to.
 

Protected Attributes

RooArgSet _varsNoWgt
 
RooRealVar_wgtVar
 
- Protected Attributes inherited from RooAbsData
RooArgSet _cachedVars
 
RooAbsDataStore_dstore
 External variables cached with this data set.
 
std::unique_ptr< RooArgSet_globalObservables
 
const TNamed_namePtr
 
std::map< std::string, RooAbsData * > _ownedComponents
 
RooArgSet _vars
 
StorageType storageType
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 
- Protected Attributes inherited from RooDirItem
TDirectory_dir {nullptr}
 

Private Types

typedef MemPoolForRooSets< RooDataSet, 5 *150 > MemPool
 

Static Private Member Functions

static MemPoolmemPool ()
 

Private Attributes

bool _doWeightErrorCheck {true}
 Counter to silence error messages when filling dataset.
 
unsigned short _errorMsgCount {0}
 
std::unique_ptr< std::vector< double > > _sumW2Buffer
 When adding events with weights, check that weights can actually be stored.
 

Friends

class RooProdGenContext
 

Additional Inherited Members

- Public Types inherited from RooAbsData
using CategorySpans = std::map< RooFit::Detail::DataKey, RooSpan< const RooAbsCategory::value_type > >
 
enum  ErrorType {
  Poisson , SumW2 , None , Auto ,
  Expected
}
 
using RealSpans = std::map< RooFit::Detail::DataKey, RooSpan< const double > >
 
enum  StorageType { Tree , Vector , Composite }
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = BIT(0) , kOverwrite = BIT(1) , kWriteDelete = BIT(2) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = BIT(3) }
 
enum  EStatusBits {
  kCanDelete = BIT(0) , kMustCleanup = BIT(3) , kIsReferenced = BIT(4) , kHasUUID = BIT(5) ,
  kCannotPick = BIT(6) , kNoContextMenu = BIT(8) , kInvalidObject = BIT(13)
}
 
- Public Types inherited from RooPrintable
enum  ContentsOption {
  kName =1 , kClassName =2 , kValue =4 , kArgs =8 ,
  kExtras =16 , kAddress =32 , kTitle =64 , kCollectionHeader =128
}
 
enum  StyleOption {
  kInline =1 , kSingleLine =2 , kStandard =3 , kVerbose =4 ,
  kTreeStructure =5
}
 
- Protected Types inherited from TObject
enum  { kOnlyPrepStep = BIT(3) }
 
- Static Protected Attributes inherited from RooAbsData
static StorageType defaultStorageType =RooAbsData::Vector
 
- Static Protected Attributes inherited from RooPrintable
static Int_t _nameLength
 

#include <RooDataSet.h>

Inheritance diagram for RooDataSet:
[legend]

Member Typedef Documentation

◆ MemPool

Definition at line 172 of file RooDataSet.h.

Constructor & Destructor Documentation

◆ RooDataSet() [1/9]

RooDataSet::RooDataSet ( )

Default constructor for persistence.

Definition at line 175 of file RooDataSet.cxx.

◆ RooDataSet() [2/9]

RooDataSet::RooDataSet ( std::string_view  name,
std::string_view  title,
const RooArgSet vars,
const char *  wgtVarName = 0 
)

Constructor of an empty data set from a RooArgSet defining the dimensions of the data space.

Definition at line 631 of file RooDataSet.cxx.

◆ RooDataSet() [3/9]

RooDataSet::RooDataSet ( std::string_view  name,
std::string_view  title,
const RooArgSet vars,
const RooCmdArg arg1,
const RooCmdArg arg2 = RooCmdArg(),
const RooCmdArg arg3 = RooCmdArg(),
const RooCmdArg arg4 = RooCmdArg(),
const RooCmdArg arg5 = RooCmdArg(),
const RooCmdArg arg6 = RooCmdArg(),
const RooCmdArg arg7 = RooCmdArg(),
const RooCmdArg arg8 = RooCmdArg() 
)

Construct an unbinned dataset from a RooArgSet defining the dimensions of the data space.

Optionally, data can be imported at the time of construction.

RooCmdArg Effect
Import(TTree*) Import contents of given TTree. Only braches of the TTree that have names corresponding to those of the RooAbsArgs that define the RooDataSet are imported.
ImportFromFile(const char* fileName, const char* treeName) Import tree with given name from file with given name.
Import(RooDataSet&) Import contents of given RooDataSet. Only observables that are common with the definition of this dataset will be imported
Index(RooCategory&) Prepare import of datasets into a N+1 dimensional RooDataSet where the extra discrete dimension labels the source of the imported histogram.
Import(const char*, RooDataSet&) Import a dataset to be associated with the given state name of the index category specified in Index(). If the given state name is not yet defined in the index category it will be added on the fly. The import command can be specified multiple times.
Link(const char*, RooDataSet&) Link contents of supplied RooDataSet to this dataset for given index category state name. In this mode, no data is copied and the linked dataset must be remain live for the duration of this dataset. Note that link is active for both reading and writing, so modifications to the aggregate dataset will also modify its components. Link() and Import() are mutually exclusive.
OwnLinked() Take ownership of all linked datasets
Import(map<string,RooDataSet*>&) As above, but allows specification of many imports in a single operation
Link(map<string,RooDataSet*>&) As above, but allows specification of many links in a single operation
Cut(const char*)
Cut(RooFormulaVar&)
Apply the given cut specification when importing data
CutRange(const char*) Only accept events in the observable range with the given name
WeightVar(const char*)
WeightVar(const RooAbsArg&)
Interpret the given variable as event weight rather than as observable
StoreError(const RooArgSet&) Store symmetric error along with value for given subset of observables
StoreAsymError(const RooArgSet&) Store asymmetric error along with value for given subset of observables
GlobalObservables(const RooArgSet&) Define the set of global observables to be stored in this RooDataSet. A snapshot of the passed RooArgSet is stored, meaning the values wont't change unexpectedly.

Definition at line 223 of file RooDataSet.cxx.

◆ RooDataSet() [4/9]

RooDataSet::RooDataSet ( std::string_view  name,
std::string_view  title,
RooDataSet dset,
const RooArgSet vars,
const char *  cuts = 0,
const char *  wgtVarName = 0 
)

Constructor of a data set from (part of) an existing data set.

The dimensions of the data set are defined by the 'vars' RooArgSet, which can be identical to 'dset' dimensions, or a subset thereof. The 'cuts' string is an optional RooFormula expression and can be used to select the subset of the data points in 'dset' to be copied. The cut expression can refer to any variable in the source dataset. For cuts involving variables other than those contained in the source data set, such as intermediate formula objects, use the equivalent constructor accepting RooFormulaVar reference as cut specification.

This constructor will internally store the data in a TTree.

For most uses the RooAbsData::reduce() wrapper function, which uses this constructor, is the most convenient way to create a subset of an existing data

Definition at line 663 of file RooDataSet.cxx.

◆ RooDataSet() [5/9]

RooDataSet::RooDataSet ( std::string_view  name,
std::string_view  title,
RooDataSet dset,
const RooArgSet vars,
const RooFormulaVar cutVar,
const char *  wgtVarName = 0 
)

Constructor of a data set from (part of) an existing data set.

The dimensions of the data set are defined by the 'vars' RooArgSet, which can be identical to 'dset' dimensions, or a subset thereof. The 'cutVar' formula variable is used to select the subset of data points to be copied. For subsets without selection on the data points, or involving cuts operating exclusively and directly on the data set dimensions, the equivalent constructor with a string based cut expression is recommended.

This constructor will internally store the data in a TTree.

For most uses the RooAbsData::reduce() wrapper function, which uses this constructor, is the most convenient way to create a subset of an existing data

Definition at line 704 of file RooDataSet.cxx.

◆ RooDataSet() [6/9]

RooDataSet::RooDataSet ( std::string_view  name,
std::string_view  title,
TTree theTree,
const RooArgSet vars,
const char *  cuts = 0,
const char *  wgtVarName = 0 
)

Constructor of a data set from (part of) a ROOT TTree.

Parameters
[in]nameName of this dataset.
[in]titleTitle for e.g. plotting.
[in]theTreeTree to be imported.
[in]varsDefines the columns of the data set. For each dimension specified, the TTree must have a branch with the same name. For category branches, this branch should contain the numeric index value. Real dimensions can be constructed from either 'Double_t' or 'Float_t' tree branches. In the latter case, an automatic conversion is applied.
[in]cutsOptional RooFormula expression to select the subset of the data points to be imported. The cut expression can refer to any variable in vars.
Warning
The expression only evaluates variables that are also in vars. Passing e.g.
RooDataSet("data", "data", tree, RooArgSet(x), "x>y")
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Definition RooArgSet.h:35
RooDataSet()
Default constructor for persistence.
Double_t x[n]
Definition legend1.C:17
Definition tree.py:1
Will load x from the tree, but leave y at an undefined value. If other expressions are needed, such as intermediate formula objects, use RooDataSet::RooDataSet(const char*,const char*,TTree*,const RooArgSet&,const RooFormulaVar&,const char*)
Parameters
[in]wgtVarNameName of the variable in vars that represents an event weight.

Definition at line 792 of file RooDataSet.cxx.

◆ RooDataSet() [7/9]

RooDataSet::RooDataSet ( std::string_view  name,
std::string_view  title,
TTree theTree,
const RooArgSet vars,
const RooFormulaVar cutVar,
const char *  wgtVarName = 0 
)

Constructor of a data set from (part of) an ROOT TTRee.

The dimensions of the data set are defined by the 'vars' RooArgSet. For each dimension specified, the TTree must have a branch with the same name. For category branches, this branch should contain the numeric index value. Real dimensions can be constructed from either 'Double_t' or 'Float_t' tree branches. In the latter case, an automatic conversion is applied.

The 'cutVar' formula variable is used to select the subset of data points to be copied. For subsets without selection on the data points, or involving cuts operating exclusively and directly on the data set dimensions, the equivalent constructor with a string based cut expression is recommended.

Definition at line 744 of file RooDataSet.cxx.

◆ RooDataSet() [8/9]

RooDataSet::RooDataSet ( RooDataSet const &  other,
const char *  newname = 0 
)

Copy constructor.

Definition at line 822 of file RooDataSet.cxx.

◆ ~RooDataSet()

RooDataSet::~RooDataSet ( )
virtual

Destructor.

Definition at line 970 of file RooDataSet.cxx.

◆ RooDataSet() [9/9]

RooDataSet::RooDataSet ( std::string_view  name,
std::string_view  title,
RooDataSet ntuple,
const RooArgSet vars,
const RooFormulaVar cutVar,
const char *  cutRange,
std::size_t  nStart,
std::size_t  nStop,
Bool_t  copyCache,
const char *  wgtVarName = 0 
)
protected

Protected constructor for internal use only.

Definition at line 833 of file RooDataSet.cxx.

Member Function Documentation

◆ add() [1/2]

void RooDataSet::add ( const RooArgSet indata,
Double_t  inweight,
Double_t  weightErrorLo,
Double_t  weightErrorHi 
)
virtual

Add a data point, with its coordinates specified in the 'data' argset, to the data set.

Any variables present in 'data' but not in the dataset will be silently ignored.

Parameters
[in]indataData point.
[in]inweightEvent weight. The current value of the weight variable is ignored.
Note
To obtain weighted events, a variable must be designated WeightVar in the constructor.
Parameters
[in]weightErrorLoAsymmetric weight error.
[in]weightErrorHiAsymmetric weight error.
Note
This requires including the weight variable in the set of StoreAsymError variables when constructing the dataset.

Definition at line 1225 of file RooDataSet.cxx.

◆ add() [2/2]

void RooDataSet::add ( const RooArgSet data,
Double_t  wgt = 1.0,
Double_t  wgtError = 0 
)
overridevirtual

Add a data point, with its coordinates specified in the 'data' argset, to the data set.

Any variables present in 'data' but not in the dataset will be silently ignored.

Parameters
[in]dataData point.
[in]wgtEvent weight. Defaults to 1. The current value of the weight variable is ignored.
Note
To obtain weighted events, a variable must be designated WeightVar in the constructor.
Parameters
[in]wgtErrorOptional weight error.
Note
This requires including the weight variable in the set of StoreError variables when constructing the dataset.

Implements RooAbsData.

Definition at line 1173 of file RooDataSet.cxx.

◆ addColumn()

RooAbsArg * RooDataSet::addColumn ( RooAbsArg var,
Bool_t  adjustRange = kTRUE 
)
virtual

Add a column with the values of the given (function) argument to this dataset.

The function value is calculated for each event using the observable values of each event in case the function depends on variables with names that are identical to the observable names in the dataset

Definition at line 1392 of file RooDataSet.cxx.

◆ addColumns()

RooArgSet * RooDataSet::addColumns ( const RooArgList varList)
virtual

Add a column with the values of the given list of (function) argument to this dataset.

Each function value is calculated for each event using the observable values of the event in case the function depends on variables with names that are identical to the observable names in the dataset

Definition at line 1409 of file RooDataSet.cxx.

◆ addFast()

void RooDataSet::addFast ( const RooArgSet data,
Double_t  wgt = 1.0,
Double_t  wgtError = 0 
)
virtual

Add a data point, with its coordinates specified in the 'data' argset, to the data set.

Attention
The order and type of the input variables are assumed to be the same as for the RooArgSet returned by RooDataSet::get(). Input values will just be written into the internal data columns by ordinal position.
Parameters
[in]dataData point.
[in]wgtEvent weight. Defaults to 1. The current value of the weight variable is ignored.
Note
To obtain weighted events, a variable must be designated WeightVar in the constructor.
Parameters
[in]wgtErrorOptional weight error.
Note
This requires including the weight variable in the set of StoreError variables when constructing the dataset.

Definition at line 1275 of file RooDataSet.cxx.

◆ addWgtVar()

RooArgSet RooDataSet::addWgtVar ( const RooArgSet origVars,
const RooAbsArg wgtVar 
)
protected

Helper function for constructor that adds optional weight variable to construct total set of observables.

Definition at line 858 of file RooDataSet.cxx.

◆ append()

void RooDataSet::append ( RooDataSet data)

Add all data points of given data set to this data set.

Observable in 'data' that are not in this dataset with not be transferred

Definition at line 1377 of file RooDataSet.cxx.

◆ binnedClone()

RooDataHist * RooDataSet::binnedClone ( const char *  newName = 0,
const char *  newTitle = 0 
) const

Return binned clone of this dataset.

Definition at line 981 of file RooDataSet.cxx.

◆ cacheClone()

RooAbsData * RooDataSet::cacheClone ( const RooAbsArg newCacheOwner,
const RooArgSet newCacheVars,
const char *  newName = 0 
)
overrideprotectedvirtual

Return a clone of this dataset containing only the cached variables.

Implements RooAbsData.

Definition at line 870 of file RooDataSet.cxx.

◆ cleanup()

void RooDataSet::cleanup ( )
static

Definition at line 116 of file RooDataSet.cxx.

◆ Clone()

virtual TObject * RooDataSet::Clone ( const char *  newname = "") const
inlineoverridevirtual

Make a clone of an object using the Streamer facility.

If newname is specified, this will be the name of the new object.

Reimplemented from TNamed.

Definition at line 72 of file RooDataSet.h.

◆ convertToTreeStore()

void RooDataSet::convertToTreeStore ( )
overridevirtual

Convert vector-based storage to tree-based storage.

This implementation overrides the base class implementation because the latter doesn't transfer weights.

Reimplemented from RooAbsData.

Definition at line 2073 of file RooDataSet.cxx.

◆ createHistogram() [1/5]

RooAbsData::createHistogram ( const char *  name,
const RooAbsRealLValue xvar,
const RooCmdArg arg1 = RooCmdArg::none(),
const RooCmdArg arg2 = RooCmdArg::none(),
const RooCmdArg arg3 = RooCmdArg::none(),
const RooCmdArg arg4 = RooCmdArg::none(),
const RooCmdArg arg5 = RooCmdArg::none(),
const RooCmdArg arg6 = RooCmdArg::none(),
const RooCmdArg arg7 = RooCmdArg::none(),
const RooCmdArg arg8 = RooCmdArg::none() 
) const

Calls createHistogram(const char *name, const RooAbsRealLValue& xvar, const RooLinkedList& argList) const.

PyROOT

The RooAbsData::createHistogram() function is pythonized with the command argument pythonization. The keywords must correspond to the CmdArgs of the function.

Definition at line 237 of file RooAbsData.cxx.

◆ createHistogram() [2/5]

TH1 * RooAbsData::createHistogram ( const char *  name,
const RooAbsRealLValue xvar,
const RooLinkedList argListIn 
) const

Create and fill a ROOT histogram TH1,TH2 or TH3 with the values of this dataset.

This function accepts the following arguments.

Parameters
[in]nameName of the ROOT histogram
[in]xvarObservable to be mapped on x axis of ROOT histogram
Returns
Histogram now owned by user.
AutoBinning(Int_t nbins, Double_y margin) Automatically calculate range with given added fractional margin, set binning to nbins
AutoSymBinning(Int_t nbins, Double_y margin) Automatically calculate range with given added fractional margin, with additional constraint that mean of data is in center of range, set binning to nbins
Binning(const char* name) Apply binning with given name to x axis of histogram
Binning(RooAbsBinning& binning) Apply specified binning to x axis of histogram
Binning(int nbins, double lo, double hi)

Apply specified binning to x axis of histogram

YVar(const RooAbsRealLValue& var,...) Observable to be mapped on y axis of ROOT histogram
ZVar(const RooAbsRealLValue& var,...) Observable to be mapped on z axis of ROOT histogram

The YVar() and ZVar() arguments can be supplied with optional Binning() Auto(Sym)Range() arguments to control the binning of the Y and Z axes, e.g.

createHistogram("histo",x,Binning(-1,1,20), YVar(y,Binning(-1,1,30)), ZVar(z,Binning("zbinning")))
TH2F * createHistogram(const RooAbsRealLValue &var1, const RooAbsRealLValue &var2, const char *cuts="", const char *name="hist") const
Create a TH2F histogram of the distribution of the specified variable using this dataset.
Double_t y[n]
Definition legend1.C:17

The caller takes ownership of the returned histogram

Definition at line 243 of file RooAbsData.cxx.

◆ createHistogram() [3/5]

TH1 * RooAbsData::createHistogram ( const char *  varNameList,
Int_t  xbins = 0,
Int_t  ybins = 0,
Int_t  zbins = 0 
) const

Create and fill a ROOT histogram TH1,TH2 or TH3 with the values of this dataset for the variables with given names The range of each observable that is histogrammed is always automatically calculated from the distribution in the dataset.

The number of bins can be controlled using the [xyz]bins parameters. For a greater degree of control use the createHistogram() method below with named arguments

The caller takes ownership of the returned histogram

Definition at line 244 of file RooAbsData.cxx.

◆ createHistogram() [4/5]

TH2F * RooDataSet::createHistogram ( const RooAbsRealLValue var1,
const RooAbsRealLValue var2,
const char *  cuts = "",
const char *  name = "hist" 
) const

Create a TH2F histogram of the distribution of the specified variable using this dataset.

Apply any cuts to select which events are used. The variable being plotted can either be contained directly in this dataset, or else be a function of the variables in this dataset. The histogram will be created using RooAbsReal::createHistogram() with the name provided (with our dataset name prepended).

Definition at line 1428 of file RooDataSet.cxx.

◆ createHistogram() [5/5]

TH2F * RooDataSet::createHistogram ( const RooAbsRealLValue var1,
const RooAbsRealLValue var2,
Int_t  nx,
Int_t  ny,
const char *  cuts = "",
const char *  name = "hist" 
) const

Create a TH2F histogram of the distribution of the specified variable using this dataset.

Apply any cuts to select which events are used. The variable being plotted can either be contained directly in this dataset, or else be a function of the variables in this dataset. The histogram will be created using RooAbsReal::createHistogram() with the name provided (with our dataset name prepended).

Definition at line 1444 of file RooDataSet.cxx.

◆ emptyClone()

RooAbsData * RooDataSet::emptyClone ( const char *  newName = 0,
const char *  newTitle = 0,
const RooArgSet vars = 0,
const char *  wgtVarName = 0 
) const
overridevirtual

Return an empty clone of this dataset.

If vars is not null, only the variables in vars are added to the definition of the empty clone

Implements RooAbsData.

Definition at line 888 of file RooDataSet.cxx.

◆ get() [1/2]

const RooArgSet * RooDataSet::get ( ) const
overridevirtual

Return a RooArgSet with the coordinates of the current event.

Reimplemented from RooAbsData.

Definition at line 1155 of file RooDataSet.cxx.

◆ get() [2/2]

const RooArgSet * RooDataSet::get ( Int_t  index) const
overridevirtual

Return RooArgSet with coordinates of event 'index'.

Reimplemented from RooAbsData.

Definition at line 1073 of file RooDataSet.cxx.

◆ getWeightBatch()

RooSpan< const double > RooDataSet::getWeightBatch ( std::size_t  first,
std::size_t  len,
bool  sumW2 
) const
overridevirtual
See also
RooAbsData::getWeightBatch().

Implements RooAbsData.

Definition at line 1022 of file RooDataSet.cxx.

◆ initialize()

void RooDataSet::initialize ( const char *  wgtVarName)
protected

Initialize the dataset.

If wgtVarName is not null, interpret the observable with that name as event weight

Definition at line 917 of file RooDataSet.cxx.

◆ isNonPoissonWeighted()

Bool_t RooDataSet::isNonPoissonWeighted ( ) const
overridevirtual

Returns true if histogram contains bins with entries with a non-integer weight.

Reimplemented from RooAbsData.

Definition at line 1133 of file RooDataSet.cxx.

◆ isWeighted()

Bool_t RooDataSet::isWeighted ( ) const
overridevirtual

Return true if dataset contains weighted events.

Reimplemented from RooAbsData.

Definition at line 1123 of file RooDataSet.cxx.

◆ memPool()

static MemPool * RooDataSet::memPool ( )
staticprivate

◆ merge() [1/2]

Bool_t RooDataSet::merge ( RooDataSet data1,
RooDataSet data2 = 0,
RooDataSet data3 = 0,
RooDataSet data4 = 0,
RooDataSet data5 = 0,
RooDataSet data6 = 0 
)

Definition at line 1317 of file RooDataSet.cxx.

◆ merge() [2/2]

Bool_t RooDataSet::merge ( std::list< RooDataSet * >  dsetList)

Merge columns of supplied data set(s) with this data set.

All data sets must have equal number of entries. In case of duplicate columns the column of the last dataset in the list prevails

Definition at line 1339 of file RooDataSet.cxx.

◆ operator delete()

void RooDataSet::operator delete ( void ptr)

◆ operator new()

void * RooDataSet::operator new ( size_t  bytes)

◆ plotOnXY()

RooDataSet::plotOnXY ( RooPlot frame,
const RooCmdArg arg1 = RooCmdArg::none(),
const RooCmdArg arg2 = RooCmdArg::none(),
const RooCmdArg arg3 = RooCmdArg::none(),
const RooCmdArg arg4 = RooCmdArg::none(),
const RooCmdArg arg5 = RooCmdArg::none(),
const RooCmdArg arg6 = RooCmdArg::none(),
const RooCmdArg arg7 = RooCmdArg::none(),
const RooCmdArg arg8 = RooCmdArg::none() 
) const
virtual

Special plot method for 'X-Y' datasets used in \( \chi^2 \) fitting.

For general plotting, see RooAbsData::plotOn().

These datasets have one observable (X) and have weights (Y) and associated errors.

Contents options Effect
YVar(RooRealVar& var) Designate specified observable as 'y' variable If not specified, the event weight will be the y variable
Histogram drawing options Effect
DrawOption(const char* opt) Select ROOT draw option for resulting TGraph object
LineStyle(Int_t style) Select line style by ROOT line style code, default is solid
LineColor(Int_t color) Select line color by ROOT color code, default is black
LineWidth(Int_t width) Select line with in pixels, default is 3
MarkerStyle(Int_t style) Select the ROOT marker style, default is 21
MarkerColor(Int_t color) Select the ROOT marker color, default is black
MarkerSize(Double_t size) Select the ROOT marker size
Rescale(Double_t factor) Apply global rescaling factor to histogram
Misc. other options Effect
Name(const chat* name) Give curve specified name in frame. Useful if curve is to be referenced later
Invisible(Bool_t flag) Add curve to frame, but do not display. Useful in combination AddTo()

PyROOT

The RooDataSet::plotOnXY() function is pythonized with the command argument pythonization. The keywords must correspond to the CmdArgs of the function.

Definition at line 1557 of file RooDataSet.cxx.

◆ printArgs()

void RooDataSet::printArgs ( std::ostream &  os) const
overridevirtual

Print argument of dataset, i.e. the observable names.

Reimplemented from RooPrintable.

Definition at line 1971 of file RooDataSet.cxx.

◆ printMultiline()

void RooDataSet::printMultiline ( std::ostream &  os,
Int_t  contents,
Bool_t  verbose = kFALSE,
TString  indent = "" 
) const
overridevirtual

Print info about this dataset to the specified output stream.

Standard: number of entries Shape: list of variables we define & were generated with

Reimplemented from RooAbsData.

Definition at line 1945 of file RooDataSet.cxx.

◆ printValue()

void RooDataSet::printValue ( std::ostream &  os) const
overridevirtual

Print value of the dataset, i.e. the sum of weights contained in the dataset.

Reimplemented from RooPrintable.

Definition at line 1958 of file RooDataSet.cxx.

◆ read()

RooDataSet * RooDataSet::read ( const char *  fileList,
const RooArgList varList,
const char *  verbOpt = "",
const char *  commonPath = "",
const char *  indexCatName = 0 
)
static

Read given list of ascii files, and construct a data set, using the given ArgList as structure definition.

Parameters
fileListMultiple file names, comma separated. Each file is optionally prefixed with 'commonPath' if such a path is provided
varListSpecify the dimensions of the dataset to be built. This list describes the order in which these dimensions appear in the ascii files to be read. Each line in the ascii file should contain N white-space separated tokens, with N the number of args in varList. Any text beyond N tokens will be ignored with a warning message. (NB: This is the default output of RooArgList::writeToStream())
verbOptQ be quiet, D debug mode (verbose)
commonPathAll filenames in fileList will be prefixed with this optional path.
indexCatNameInterpret the data as belonging to category indexCatName. When multiple files are read, a RooCategory arg in varList can optionally be designated to hold information about the source file of each data point. This feature is enabled by giving the name of the (already existing) category variable in indexCatName.
Attention
If the value of any of the variables on a given line exceeds the fit range associated with that dimension, the entire line will be ignored. A warning message is printed in each case, unless the Q verbose option is given. The number of events read and skipped is always summarized at the end.

If no further information is given a label name 'fileNNN' will be assigned to each event, where NNN is the sequential number of the source file in fileList.

Alternatively, it is possible to override the default label names of the index category by specifying them in the fileList string: When instead of file1.txt,file2.txt the string file1.txt:FOO,file2.txt:BAR is specified, a state named "FOO" is assigned to the index category for each event originating from file1.txt. The labels FOO,BAR may be predefined in the index category via defineType(), but don't have to be.

Finally, one can also assign the same label to multiple files, either by specifying file1.txt:FOO,file2,txt:FOO,file3.txt:BAR or file1.txt,file2.txt:FOO,file3.txt:BAR.

Definition at line 1719 of file RooDataSet.cxx.

◆ reduceEng()

RooAbsData * RooDataSet::reduceEng ( const RooArgSet varSubset,
const RooFormulaVar cutVar,
const char *  cutRange = 0,
std::size_t  nStart = 0,
std::size_t  nStop = std::numeric_limits<std::size_t>::max(),
Bool_t  copyCache = kTRUE 
)
overrideprotectedvirtual

Implementation of RooAbsData virtual method that drives the RooAbsData::reduce() methods.

Implements RooAbsData.

Definition at line 944 of file RooDataSet.cxx.

◆ SetName()

void RooDataSet::SetName ( const char *  name)
overridevirtual

Change the name of this dataset into the given name.

Reimplemented from RooAbsData.

Definition at line 1997 of file RooDataSet.cxx.

◆ SetNameTitle()

void RooDataSet::SetNameTitle ( const char *  name,
const char *  title 
)
overridevirtual

Change the title of this dataset into the given name.

Reimplemented from RooAbsData.

Definition at line 2009 of file RooDataSet.cxx.

◆ sumEntries() [1/2]

Double_t RooDataSet::sumEntries ( ) const
overridevirtual

Return effective number of entries in dataset, i.e., sum all weights.

Implements RooAbsData.

Definition at line 1082 of file RooDataSet.cxx.

◆ sumEntries() [2/2]

Double_t RooDataSet::sumEntries ( const char *  cutSpec,
const char *  cutRange = 0 
) const
overridevirtual

Return the sum of weights in all entries matching cutSpec (if specified) and in named range cutRange (if specified)

Implements RooAbsData.

Definition at line 1092 of file RooDataSet.cxx.

◆ weight()

Double_t RooDataSet::weight ( ) const
overridevirtual

Return event weight of current event.

Implements RooAbsData.

Definition at line 1004 of file RooDataSet.cxx.

◆ weightError() [1/2]

void RooDataSet::weightError ( double lo,
double hi,
ErrorType  etype = SumW2 
) const
overridevirtual

Return the asymmetric errors on the current weight.

See also weightError(ErrorType) const for symmetric error.

Parameters
[out]loLow error.
[out]hiHigh error.
[in]etypeType of error to compute. May throw if not supported.

Reimplemented from RooAbsData.

Definition at line 1056 of file RooDataSet.cxx.

◆ weightError() [2/2]

double RooDataSet::weightError ( ErrorType  etype = SumW2) const
overridevirtual

Reimplemented from RooAbsData.

Definition at line 1064 of file RooDataSet.cxx.

◆ weightSquared()

Double_t RooDataSet::weightSquared ( ) const
overridevirtual

Return squared event weight of current event.

Implements RooAbsData.

Definition at line 1014 of file RooDataSet.cxx.

◆ weightVar()

RooRealVar * RooDataSet::weightVar ( ) const
inline

Returns a pointer to the weight variable (if set).

Definition at line 109 of file RooDataSet.h.

◆ write() [1/2]

Bool_t RooDataSet::write ( const char *  filename) const

Write the contents of this dataset to an ASCII file with the specified name.

Each event will be written as a single line containing the written values of each observable in the order they were declared in the dataset and separated by whitespaces

Definition at line 1904 of file RooDataSet.cxx.

◆ write() [2/2]

Bool_t RooDataSet::write ( std::ostream &  ofs) const

Write the contents of this dataset to the stream.

Each event will be written as a single line containing the written values of each observable in the order they were declared in the dataset and separated by whitespaces

Definition at line 1924 of file RooDataSet.cxx.

Friends And Related Symbol Documentation

◆ RooProdGenContext

friend class RooProdGenContext
friend

Definition at line 155 of file RooDataSet.h.

Member Data Documentation

◆ _doWeightErrorCheck

bool RooDataSet::_doWeightErrorCheck {true}
private

Counter to silence error messages when filling dataset.

Definition at line 176 of file RooDataSet.h.

◆ _errorMsgCount

unsigned short RooDataSet::_errorMsgCount {0}
private

Definition at line 175 of file RooDataSet.h.

◆ _sumW2Buffer

std::unique_ptr<std::vector<double> > RooDataSet::_sumW2Buffer
mutableprivate

When adding events with weights, check that weights can actually be stored.

Definition at line 178 of file RooDataSet.h.

◆ _varsNoWgt

RooArgSet RooDataSet::_varsNoWgt
protected

Definition at line 167 of file RooDataSet.h.

◆ _wgtVar

RooRealVar* RooDataSet::_wgtVar
protected

Definition at line 168 of file RooDataSet.h.

Libraries for RooDataSet:

The documentation for this class was generated from the following files: