Abstract base class for binned and unbinned datasets.
The abstract interface defines plotting and tabulating entry points for its contents and provides an iterator over its elements (bins for binned data sets, data points for unbinned datasets).
RooFit groups model variables into observables and parameters, depending on if their values are stored in the dataset. For fits with parameter constraints, there is a third kind of variables, called global observables. These represent the results of auxiliary measurements that constrain the nuisance parameters. In the RooFit implementation, a likelihood is generally the sum of two terms:
Before this release, the global observable values were always taken from the model/pdf. With this release, a mechanism is added to store a snapshot of global observables in any RooDataSet or RooDataHist. For toy studies where the global observables assume a different values for each toy, the bookkeeping of the set of global observables and in particular their values is much easier with this change.
Usage example for a model with global observables g1
and g2
:
In case you create a RooFit dataset directly by calling its constructor, you can also pass the global observables in a command argument instead of calling RooAbsData::setGlobalObservables() later:
To access the set of global observables stored in a RooAbsData, call RooAbsData::getGlobalObservables(). It returns a nullptr
if no global observable snapshots are stored in the dataset.
Some member functions of RooAbsData that take a RooCmdArg as argument also support keyword arguments. This applies to RooAbsData::plotOn, RooAbsData::createHistogram, RooAbsData::reduce, RooAbsData::statOn. For example, the following code is equivalent in PyROOT:
Definition at line 57 of file RooAbsData.h.
Classes | |
struct | PlotOpt |
Public Types | |
using | CategorySpans = std::map< RooFit::Detail::DataKey, std::span< const RooAbsCategory::value_type > > |
enum | ErrorType { Poisson , SumW2 , None , Auto , Expected } |
using | RealSpans = std::map< RooFit::Detail::DataKey, std::span< 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 = (1ULL << ( 0 )) , kOverwrite = (1ULL << ( 1 )) , kWriteDelete = (1ULL << ( 2 )) } |
enum | EDeprecatedStatusBits { kObjInCanvas = (1ULL << ( 3 )) } |
enum | EStatusBits { kCanDelete = (1ULL << ( 0 )) , kMustCleanup = (1ULL << ( 3 )) , kIsReferenced = (1ULL << ( 4 )) , kHasUUID = (1ULL << ( 5 )) , kCannotPick = (1ULL << ( 6 )) , kNoContextMenu = (1ULL << ( 8 )) , kInvalidObject = (1ULL << ( 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 } |
Public Member Functions | |
RooAbsData () | |
Default constructor. | |
RooAbsData (const RooAbsData &other, const char *newname=nullptr) | |
Copy constructor. | |
RooAbsData (RooStringView name, RooStringView title, const RooArgSet &vars, RooAbsDataStore *store=nullptr) | |
Constructor from a set of variables. | |
~RooAbsData () override | |
Destructor. | |
virtual void | add (const RooArgSet &row, double weight=1)=0 |
void | addOwnedComponent (const char *idxlabel, RooAbsData &data) |
void | attachBuffers (const RooArgSet &extObs) |
bool | canSplitFast () const |
virtual bool | changeObservableName (const char *from, const char *to) |
void | checkInit () const |
virtual void | convertToTreeStore () |
Convert vector-based storage to tree-based storage. | |
void | convertToVectorStore () |
Convert tree-based storage to vector-based storage. | |
double | correlation (RooRealVar &x, RooRealVar &y, const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
RooFit::OwningPtr< TMatrixDSym > | correlationMatrix (const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
RooFit::OwningPtr< TMatrixDSym > | correlationMatrix (const RooArgList &vars, const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
double | covariance (RooRealVar &x, RooRealVar &y, const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
RooFit::OwningPtr< TMatrixDSym > | covarianceMatrix (const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
RooFit::OwningPtr< TMatrixDSym > | covarianceMatrix (const RooArgList &vars, const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
TH1 * | createHistogram (const char *name, const RooAbsRealLValue &xvar, const RooCmdArg &arg1={}, const RooCmdArg &arg2={}, const RooCmdArg &arg3={}, const RooCmdArg &arg4={}, const RooCmdArg &arg5={}, const RooCmdArg &arg6={}, const RooCmdArg &arg7={}, const RooCmdArg &arg8={}) const |
Calls createHistogram(const char *name, const RooAbsRealLValue& xvar, const RooLinkedList& argList) const. | |
TH1 * | createHistogram (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. | |
TH1 * | createHistogram (const char *varNameList, const RooCmdArg &binArgX={}, const RooCmdArg &binArgY={}, const RooCmdArg &binArgZ={}) const |
Create and fill a ROOT histogram TH1,TH2 or TH3 with the values of this dataset for the variables with given names. | |
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. | |
TH2F * | createHistogram (const RooAbsRealLValue &var1, const RooAbsRealLValue &var2, int nx, int ny, const char *cuts="", const char *name="hist") const |
Create a TH2F histogram of the distribution of the specified variable using this dataset. | |
Int_t | defaultPrintContents (Option_t *opt) const override |
Define default print options, for a given print style. | |
void | Draw (Option_t *option="") override |
Forward draw command to data store. | |
virtual RooFit::OwningPtr< RooAbsData > | emptyClone (const char *newName=nullptr, const char *newTitle=nullptr, const RooArgSet *vars=nullptr, const char *wgtVarName=nullptr) const =0 |
virtual void | fill () |
virtual TH1 * | fillHistogram (TH1 *hist, const RooArgList &plotVars, const char *cuts="", const char *cutRange=nullptr) const |
Loop over columns of our tree data and fill the input histogram. | |
virtual const RooArgSet * | get () const |
virtual const RooArgSet * | get (Int_t index) const |
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 |
TTree * | GetClonedTree () 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 | getRange (const RooAbsRealLValue &var, double &lowest, double &highest, double marginFrac=0.0, bool symMode=false) const |
Fill Doubles 'lowest' and 'highest' with the lowest and highest value of observable 'var' in this dataset. | |
RooAbsData * | getSimData (const char *idxstate) |
virtual std::span< const double > | getWeightBatch (std::size_t first, std::size_t len, bool sumW2=false) const =0 |
Return event weights of all events in range [first, first+len). | |
bool | hasFilledCache () const |
TClass * | IsA () const override |
virtual bool | isNonPoissonWeighted () const |
virtual bool | isWeighted () const |
double | kurtosis (const RooRealVar &var, const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
double | mean (const RooRealVar &var, const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
RooRealVar * | meanVar (const RooRealVar &var, const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
Create a RooRealVar containing the mean of observable 'var' in this dataset. | |
double | moment (const RooRealVar &var, double order, const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
Calculate moment of requested order. | |
double | moment (const RooRealVar &var, double order, double offset, const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
Return the 'order'-ed moment of observable 'var' in this dataset. | |
const TNamed * | namePtr () 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. | |
RooAbsData & | operator= (const RooAbsData &other) |
virtual RooPlot * | plotOn (RooPlot *frame, const RooCmdArg &arg1={}, const RooCmdArg &arg2={}, const RooCmdArg &arg3={}, const RooCmdArg &arg4={}, const RooCmdArg &arg5={}, const RooCmdArg &arg6={}, const RooCmdArg &arg7={}, const RooCmdArg &arg8={}) const |
virtual RooPlot * | plotOn (RooPlot *frame, const RooLinkedList &cmdList) const |
Plot dataset on specified frame. | |
void | Print (Option_t *options=nullptr) const override |
This method must be overridden when a class wants to print itself. | |
void | printClassName (std::ostream &os) const override |
Print class name of dataset. | |
void | printMultiline (std::ostream &os, Int_t contents, bool verbose=false, TString indent="") const override |
Interface for detailed printing of object. | |
void | printName (std::ostream &os) const override |
Print name of dataset. | |
void | printTitle (std::ostream &os) const override |
Print title of dataset. | |
void | RecursiveRemove (TObject *obj) override |
If one of the TObject we have a referenced to is deleted, remove the reference. | |
RooFit::OwningPtr< RooAbsData > | reduce (const char *cut) const |
Create a subset of the data set by applying the given cut on the data points. | |
RooFit::OwningPtr< RooAbsData > | reduce (const RooArgSet &varSubset, const char *cut=nullptr) const |
Create a subset of the data set by applying the given cut on the data points and reducing the dimensions to the specified set. | |
RooFit::OwningPtr< RooAbsData > | reduce (const RooArgSet &varSubset, const RooFormulaVar &cutVar) const |
Create a subset of the data set by applying the given cut on the data points and reducing the dimensions to the specified set. | |
RooFit::OwningPtr< RooAbsData > | reduce (const RooCmdArg &arg1, const RooCmdArg &arg2={}, const RooCmdArg &arg3={}, const RooCmdArg &arg4={}, const RooCmdArg &arg5={}, const RooCmdArg &arg6={}, const RooCmdArg &arg7={}, const RooCmdArg &arg8={}) const |
Create a reduced copy of this dataset. | |
RooFit::OwningPtr< RooAbsData > | reduce (const RooFormulaVar &cutVar) const |
Create a subset of the data set by applying the given cut on the data points. | |
virtual void | reset () |
void | resetBuffers () |
RooRealVar * | rmsVar (const RooRealVar &var, const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
Create a RooRealVar containing the RMS of observable 'var' in this dataset. | |
void | setDirtyProp (bool flag) |
Control propagation of dirty flags from observables in dataset. | |
void | setGlobalObservables (RooArgSet const &globalObservables) |
Sets the global observables stored in this data. | |
void | SetName (const char *name) override |
Set the name of the TNamed. | |
void | SetNameTitle (const char *name, const char *title) override |
Set all the TNamed parameters (name and title). | |
double | sigma (const RooRealVar &var, const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
double | skewness (const RooRealVar &var, const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
virtual RooFit::OwningPtr< TList > | split (const RooAbsCategory &splitCat, bool createEmptyDataSets=false) const |
Split the dataset into subsets based on states of a categorical variable in this dataset. | |
virtual RooFit::OwningPtr< TList > | split (const RooSimultaneous &simpdf, bool createEmptyDataSets=false) const |
Split the dataset into subsets based on the channels of a RooSimultaneous. | |
double | standMoment (const RooRealVar &var, double order, const char *cutSpec=nullptr, const char *cutRange=nullptr) const |
Calculate standardized moment. | |
virtual RooPlot * | statOn (RooPlot *frame, const char *what, const char *label="", Int_t sigDigits=2, Option_t *options="NELU", double xmin=0.15, double xmax=0.65, double ymax=0.85, const char *cutSpec=nullptr, const char *cutRange=nullptr, const RooCmdArg *formatCmd=nullptr) |
Implementation back-end of statOn() method with named arguments. | |
virtual RooPlot * | statOn (RooPlot *frame, const RooCmdArg &arg1={}, const RooCmdArg &arg2={}, const RooCmdArg &arg3={}, const RooCmdArg &arg4={}, const RooCmdArg &arg5={}, const RooCmdArg &arg6={}, const RooCmdArg &arg7={}, const RooCmdArg &arg8={}) |
Add a box with statistics information to the specified frame. | |
RooAbsDataStore * | store () |
const RooAbsDataStore * | store () const |
void | Streamer (TBuffer &) override |
Stream an object of class RooAbsData. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
virtual double | sumEntries () const =0 |
Return effective number of entries in dataset, i.e., sum all weights. | |
virtual double | sumEntries (const char *cutSpec, const char *cutRange=nullptr) const =0 |
Return effective number of entries in dataset inside range or after cuts, i.e., sum certain weights. | |
double | sumEntriesW2 () const |
Return sum of squared weights of this data. | |
virtual Roo1DTable * | table (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 Roo1DTable * | table (const RooArgSet &catSet, const char *cuts="", const char *opts="") const |
Construct table for product of categories in catSet. | |
const TTree * | tree () const |
Return a pointer to the TTree which stores the data. | |
RooFit::UniqueId< RooAbsData > const & | uniqueId () const |
Returns a unique ID that is different for every instantiated RooAbsData object. | |
virtual double | weight () const =0 |
virtual void | weightError (double &lo, double &hi, ErrorType=Poisson) const |
Return the asymmetric errors on the current weight. | |
virtual double | weightError (ErrorType=Poisson) const |
Return the symmetric error on the current weight. | |
virtual double | weightSquared () const =0 |
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. | |
void | Clear (Option_t *option="") override |
Set name and title to empty strings (""). | |
TObject * | Clone (const char *newname="") const override |
Make a clone of an object using the Streamer facility. | |
Int_t | Compare (const TObject *obj) const override |
Compare two TNamed objects. | |
void | Copy (TObject &named) const override |
Copy this to obj. | |
virtual void | FillBuffer (char *&buffer) |
Encode TNamed into output buffer. | |
const char * | GetName () const override |
Returns name of object. | |
const char * | GetTitle () const override |
Returns title of object. | |
ULong_t | Hash () const override |
Return hash value for this object. | |
TClass * | IsA () const override |
Bool_t | IsSortable () const override |
void | ls (Option_t *option="") const override |
List TNamed name and title. | |
TNamed & | operator= (const TNamed &rhs) |
TNamed assignment operator. | |
void | Print (Option_t *option="") const override |
Print TNamed name and title. | |
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. | |
void | Streamer (TBuffer &) override |
Stream an object of class TObject. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
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 TObject * | DrawClone (Option_t *option="") const |
Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1) . | |
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=nullptr) |
Execute method on this object with the given parameter string, e.g. | |
virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr) |
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 TObject * | FindObject (const char *name) const |
Must be redefined in derived classes. | |
virtual TObject * | FindObject (const TObject *obj) const |
Must be redefined in derived classes. | |
virtual Option_t * | GetDrawOption () 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_t * | GetOption () 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 (the base implementation is no-op). | |
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, void *vp) |
Only called by placement new when throwing an exception. | |
void | operator delete[] (void *ptr) |
Operator delete []. | |
void | operator delete[] (void *ptr, void *vp) |
Only called by placement new[] when throwing an exception. | |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *vp) |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, void *vp) |
TObject & | operator= (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. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
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=nullptr, Int_t option=0, Int_t bufsize=0) |
Write this object to the current directory. | |
virtual Int_t | Write (const char *name=nullptr, 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 | printArgs (std::ostream &os) const |
Interface for printing of object arguments. | |
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. | |
virtual void | printValue (std::ostream &os) const |
Interface to print value of object. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Static Public Member Functions | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
static StorageType | getDefaultStorageType () |
static void | setDefaultStorageType (StorageType s) |
Static Public Member Functions inherited from TNamed | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TObject | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
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 TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
static std::ostream & | defaultPrintStream (std::ostream *os=nullptr) |
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 | |
bool | 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=nullptr, bool skipZeroWeights=false) |
Internal method – Cache given set of functions with data. | |
double | corrcov (const RooRealVar &x, const RooRealVar &y, const char *cutSpec, const char *cutRange, bool corr) const |
Internal method to calculate single correlation and covariance elements. | |
RooFit::OwningPtr< TMatrixDSym > | corrcovMatrix (const RooArgList &vars, const char *cutSpec, const char *cutRange, bool corr) const |
Return covariance matrix from data for given list of observables. | |
RooRealVar * | dataRealVar (const char *methodname, const RooRealVar &extVar) const |
Internal method to check if given RooRealVar maps to a RooRealVar in this dataset. | |
void | initializeVars (RooArgSet const &vars) |
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 RooPlot * | plotAsymOn (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 RooPlot * | plotEffOn (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 RooPlot * | plotOn (RooPlot *frame, PlotOpt o) const |
Create and fill a histogram of the frame's variable and append it to the frame. | |
virtual std::unique_ptr< RooAbsData > | reduceEng (const RooArgSet &varSubset, const RooFormulaVar *cutVar, const char *cutRange=nullptr, std::size_t nStart=0, std::size_t=std::numeric_limits< std::size_t >::max()) const =0 |
virtual void | resetCache () |
Internal method – Remove cached function values. | |
virtual void | setArgStatus (const RooArgSet &set, bool 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 Attributes | |
RooArgSet | _cachedVars |
! External variables cached with this data set | |
std::unique_ptr< RooAbsDataStore > | _dstore |
Data storage implementation. | |
std::unique_ptr< RooArgSet > | _globalObservables |
Snapshot of global observables. | |
const TNamed * | _namePtr = nullptr |
! De-duplicated name pointer. This will be equal for all objects with the same name. | |
std::map< std::string, RooAbsData * > | _ownedComponents |
Owned external components. | |
RooArgSet | _vars |
Dimensions of this data set. | |
StorageType | storageType |
Protected Attributes inherited from TNamed | |
TString | fName |
TString | fTitle |
Static Protected Attributes | |
static StorageType | defaultStorageType =RooAbsData::Vector |
Static Protected Attributes inherited from RooPrintable | |
static Int_t | _nameLength |
Private Member Functions | |
void | copyGlobalObservables (const RooAbsData &other) |
void | copyImpl (const RooAbsData &other, const char *newname) |
Private Attributes | |
const RooFit::UniqueId< RooAbsData > | _uniqueId |
! | |
Friends | |
class | RooAbsOptTestStatistic |
struct | RooFit::TestStatistics::ConstantTermsOptimizer |
class | RooFit::TestStatistics::RooAbsL |
Additional Inherited Members | |
Protected Types inherited from TObject | |
enum | { kOnlyPrepStep = (1ULL << ( 3 )) } |
#include <RooAbsData.h>
using RooAbsData::CategorySpans = std::map<RooFit::Detail::DataKey, std::span<const RooAbsCategory::value_type> > |
Definition at line 132 of file RooAbsData.h.
using RooAbsData::RealSpans = std::map<RooFit::Detail::DataKey, std::span<const double> > |
Definition at line 131 of file RooAbsData.h.
Enumerator | |
---|---|
Poisson | |
SumW2 | |
None | |
Auto | |
Expected |
Definition at line 108 of file RooAbsData.h.
Enumerator | |
---|---|
Tree | |
Vector | |
Composite |
Definition at line 278 of file RooAbsData.h.
RooAbsData::RooAbsData | ( | ) |
Default constructor.
Definition at line 149 of file RooAbsData.cxx.
RooAbsData::RooAbsData | ( | RooStringView | name, |
RooStringView | title, | ||
const RooArgSet & | vars, | ||
RooAbsDataStore * | dstore = nullptr |
||
) |
Constructor from a set of variables.
Only fundamental elements of vars (RooRealVar,RooCategory etc) are stored as part of the dataset
Definition at line 183 of file RooAbsData.cxx.
RooAbsData::RooAbsData | ( | const RooAbsData & | other, |
const char * | newname = nullptr |
||
) |
Copy constructor.
Definition at line 245 of file RooAbsData.cxx.
|
override |
Destructor.
Definition at line 280 of file RooAbsData.cxx.
Implemented in RooDataSet, and RooDataHist.
void RooAbsData::addOwnedComponent | ( | const char * | idxlabel, |
RooAbsData & | data | ||
) |
Definition at line 2366 of file RooAbsData.cxx.
Utility function that determines if all clients of object 'var' appear in given list of cached nodes.
Definition at line 2319 of file RooAbsData.cxx.
void RooAbsData::attachBuffers | ( | const RooArgSet & | extObs | ) |
Definition at line 2337 of file RooAbsData.cxx.
|
protectedvirtual |
Internal method – Attach dataset copied with cache contents to copied instances of functions.
Definition at line 363 of file RooAbsData.cxx.
|
protectedvirtual |
Internal method – Cache given set of functions with data.
Definition at line 346 of file RooAbsData.cxx.
bool RooAbsData::canSplitFast | ( | ) | const |
Definition at line 2351 of file RooAbsData.cxx.
|
virtual |
Definition at line 303 of file RooAbsData.cxx.
void RooAbsData::checkInit | ( | ) | const |
Definition at line 2392 of file RooAbsData.cxx.
|
static |
|
inlinestaticconstexpr |
Definition at line 366 of file RooAbsData.h.
|
virtual |
Convert vector-based storage to tree-based storage.
Reimplemented in RooDataSet.
Definition at line 2446 of file RooAbsData.cxx.
void RooAbsData::convertToVectorStore | ( | ) |
Convert tree-based storage to vector-based storage.
Definition at line 293 of file RooAbsData.cxx.
|
private |
Definition at line 266 of file RooAbsData.cxx.
|
private |
Definition at line 204 of file RooAbsData.cxx.
|
protected |
Internal method to calculate single correlation and covariance elements.
Definition at line 924 of file RooAbsData.cxx.
|
protected |
Return covariance matrix from data for given list of observables.
Definition at line 982 of file RooAbsData.cxx.
|
inline |
Definition at line 249 of file RooAbsData.h.
|
inline |
Definition at line 252 of file RooAbsData.h.
|
inline |
Definition at line 254 of file RooAbsData.h.
|
inline |
Definition at line 248 of file RooAbsData.h.
|
inline |
Definition at line 251 of file RooAbsData.h.
|
inline |
Definition at line 253 of file RooAbsData.h.
RooAbsData::createHistogram | ( | const char * | name, |
const RooAbsRealLValue & | xvar, | ||
const RooCmdArg & | arg1 = {} , |
||
const RooCmdArg & | arg2 = {} , |
||
const RooCmdArg & | arg3 = {} , |
||
const RooCmdArg & | arg4 = {} , |
||
const RooCmdArg & | arg5 = {} , |
||
const RooCmdArg & | arg6 = {} , |
||
const RooCmdArg & | arg7 = {} , |
||
const RooCmdArg & | arg8 = {} |
||
) | const |
Calls createHistogram(const char *name, const RooAbsRealLValue& xvar, const RooLinkedList& argList) const.
The RooAbsData::createHistogram() function is pythonized with the command argument pythonization. The keywords must correspond to the CmdArgs of the function.
Definition at line 561 of file RooAbsData.cxx.
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.
[in] | name | Name of the ROOT histogram |
[in] | xvar | Observable to be mapped on x axis of ROOT histogram |
[in] | argListIn | list of input arguments |
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.
The caller takes ownership of the returned histogram
Definition at line 673 of file RooAbsData.cxx.
TH1 * RooAbsData::createHistogram | ( | const char * | varNameList, |
const RooCmdArg & | binArgX = {} , |
||
const RooCmdArg & | binArgY = {} , |
||
const RooCmdArg & | binArgZ = {} |
||
) | const |
Create and fill a ROOT histogram TH1,TH2 or TH3 with the values of this dataset for the variables with given names.
[in] | varNameList | Comma-separated variable names. |
[in] | binArgX | Control the binning for the x variable. |
[in] | binArgY | Control the binning for the y variable. |
[in] | binArgZ | Control the binning for the z variable. |
The possible binning command arguments for each axis are:
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 |
Definition at line 598 of file RooAbsData.cxx.
TH2F * RooAbsData::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 2553 of file RooAbsData.cxx.
TH2F * RooAbsData::createHistogram | ( | const RooAbsRealLValue & | var1, |
const RooAbsRealLValue & | var2, | ||
int | nx, | ||
int | 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 2568 of file RooAbsData.cxx.
|
protected |
Internal method to check if given RooRealVar maps to a RooRealVar in this dataset.
Definition at line 905 of file RooAbsData.cxx.
|
inlinestatic |
Definition at line 366 of file RooAbsData.h.
Define default print options, for a given print style.
Reimplemented from RooPrintable.
Definition at line 814 of file RooAbsData.cxx.
|
overridevirtual |
Forward draw command to data store.
Reimplemented from TObject.
Definition at line 2400 of file RooAbsData.cxx.
|
pure virtual |
Implemented in RooDataHist, and RooDataSet.
|
virtual |
Definition at line 316 of file RooAbsData.cxx.
|
virtual |
Loop over columns of our tree data and fill the input histogram.
Returns a pointer to the input histogram, or zero in case of an error. The input histogram can be any TH1 subclass, and therefore of arbitrary dimension. Variables are matched with the (x,y,...) dimensions of the input histogram according to the order in which they appear in the input plotVars list.
Definition at line 1272 of file RooAbsData.cxx.
|
inlinevirtual |
Reimplemented in RooDataHist, and RooDataSet.
Definition at line 101 of file RooAbsData.h.
Reimplemented in RooDataHist, and RooDataSet.
Definition at line 337 of file RooAbsData.cxx.
RooAbsData::RealSpans RooAbsData::getBatches | ( | std::size_t | begin = 0 , |
std::size_t | len = std::numeric_limits<std::size_t>::max() |
||
) | const |
Write information to retrieve data columns into evalData.spans
.
All spans belonging to variables of this dataset are overwritten. Spans to other variables remain intact.
begin | Index of first event that ends up in the batch. |
len | Number of events in each batch. |
Definition at line 2536 of file RooAbsData.cxx.
RooAbsData::CategorySpans RooAbsData::getCategoryBatches | ( | std::size_t | first = 0 , |
std::size_t | len = std::numeric_limits<std::size_t>::max() |
||
) | const |
Definition at line 2541 of file RooAbsData.cxx.
TTree * RooAbsData::GetClonedTree | ( | ) | const |
Return a clone of the TTree which stores the data or create such a tree if vector storage is used.
The user is responsible for deleting the tree
Definition at line 2432 of file RooAbsData.cxx.
|
static |
Definition at line 141 of file RooAbsData.cxx.
|
inline |
Returns snapshot of global observables stored in this data.
nullptr
if no global observables are stored. Definition at line 288 of file RooAbsData.h.
bool RooAbsData::getRange | ( | const RooAbsRealLValue & | var, |
double & | lowest, | ||
double & | highest, | ||
double | marginFrac = 0.0 , |
||
bool | symMode = false |
||
) | const |
Fill Doubles 'lowest' and 'highest' with the lowest and highest value of observable 'var' in this dataset.
If the return value is true and error occurred
Definition at line 2197 of file RooAbsData.cxx.
RooAbsData * RooAbsData::getSimData | ( | const char * | idxstate | ) |
Definition at line 2358 of file RooAbsData.cxx.
|
pure virtual |
Return event weights of all events in range [first, first+len).
If no contiguous structure of weights is stored, an empty batch can be returned. This indicates that the weight is constant. Use weight() to retrieve it.
Implemented in RooDataSet, and RooDataHist.
bool RooAbsData::hasFilledCache | ( | ) | const |
Definition at line 2407 of file RooAbsData.cxx.
|
protected |
Definition at line 155 of file RooAbsData.cxx.
|
inlineoverridevirtual |
Reimplemented from TObject.
Reimplemented in RooDataHist, RooDataSet, and RooTreeData.
Definition at line 366 of file RooAbsData.h.
|
inlinevirtual |
Reimplemented in RooDataHist, and RooDataSet.
Definition at line 156 of file RooAbsData.h.
|
inlinevirtual |
Reimplemented in RooDataHist, and RooDataSet.
Definition at line 152 of file RooAbsData.h.
|
inline |
Definition at line 246 of file RooAbsData.h.
|
inline |
Definition at line 243 of file RooAbsData.h.
RooRealVar * RooAbsData::meanVar | ( | const RooRealVar & | var, |
const char * | cutSpec = nullptr , |
||
const char * | cutRange = nullptr |
||
) | const |
Create a RooRealVar containing the mean of observable 'var' in this dataset.
If cutSpec and/or cutRange are specified the moment is calculated on the subset of the data which pass the C++ cut specification expression 'cutSpec' and/or are inside the range named 'cutRange'
Definition at line 1061 of file RooAbsData.cxx.
double RooAbsData::moment | ( | const RooRealVar & | var, |
double | order, | ||
const char * | cutSpec = nullptr , |
||
const char * | cutRange = nullptr |
||
) | const |
Calculate moment of requested order.
[in] | var | Variable to be used for calculating the moment. |
[in] | order | Order of the moment. |
[in] | cutSpec | If specified, the moment is calculated on the subset of the data which pass the C++ cut specification expression 'cutSpec' |
[in] | cutRange | If specified, calculate inside the range named 'cutRange' (also applies cut spec) |
Definition at line 847 of file RooAbsData.cxx.
double RooAbsData::moment | ( | const RooRealVar & | var, |
double | order, | ||
double | offset, | ||
const char * | cutSpec = nullptr , |
||
const char * | cutRange = nullptr |
||
) | const |
Return the 'order'-ed moment of observable 'var' in this dataset.
If offset is non-zero it is subtracted from the values of 'var' prior to the moment calculation. If cutSpec and/or cutRange are specified the moment is calculated on the subset of the data which pass the C++ cut specification expression 'cutSpec' and/or are inside the range named 'cutRange'
Definition at line 860 of file RooAbsData.cxx.
|
inline |
De-duplicated pointer to this object's name.
This can be used for fast name comparisons. like if (namePtr() == other.namePtr())
.
Definition at line 297 of file RooAbsData.h.
|
virtual |
Return number of entries in dataset, i.e., count unweighted entries.
Definition at line 323 of file RooAbsData.cxx.
RooAbsData & RooAbsData::operator= | ( | const RooAbsData & | other | ) |
Definition at line 255 of file RooAbsData.cxx.
|
protectedvirtual |
Prepare dataset for use with cached constant terms listed in 'cacheList' of expression 'arg'.
Deactivate tree branches for any dataset observable that is either not used at all, or is used exclusively by cached branch nodes.
Definition at line 2262 of file RooAbsData.cxx.
|
protectedvirtual |
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.
The asymmetry category 'asymCat' must have exactly 2 (or 3) states defined with index values +1,-1 (and 0)
The plot range and the number of plot bins is determined by the parameters of the plot variable of the frame (RooAbsReal::setPlotRange(), RooAbsReal::setPlotBins())
The optional cut string expression can be used to select the events to be plotted. The cut specification may refer to any variable contained in the data set
The drawOptions are passed to the TH1::Draw() method
Definition at line 1963 of file RooAbsData.cxx.
|
protectedvirtual |
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.
The efficiency category 'effCat' must have exactly 2 +1 and 0.
The plot range and the number of plot bins is determined by the parameters of the plot variable of the frame (RooAbsReal::setPlotRange(), RooAbsReal::setPlotBins())
The optional cut string expression can be used to select the events to be plotted. The cut specification may refer to any variable contained in the data set
The drawOptions are passed to the TH1::Draw() method
Definition at line 2056 of file RooAbsData.cxx.
|
virtual |
The RooAbsData::plotOn() function is pythonized with the command argument pythonization. The keywords must correspond to the CmdArgs of the function.
Reimplemented in RooDataHist.
Definition at line 548 of file RooAbsData.cxx.
|
virtual |
Plot dataset on specified frame.
By default:
The following optional named arguments can be used to modify the behaviour:
Data representation options | |
---|---|
RooFit::Asymmetry(const RooCategory& c) | Show the asymmetry of the data in given two-state category [F(+)-F(-)] / [F(+)+F(-)]. Category must have two states with indices -1 and +1 or three states with indices -1,0 and +1. |
RooFit::Efficiency(const RooCategory& c) | Show the efficiency F(acc)/[F(acc)+F(rej)]. Category must have two states with indices 0 and 1 |
RooFit::DataError(Int_t) | Select the type of error drawn:
|
RooFit::Binning(int nbins, double xlo, double xhi) | Use specified binning to draw dataset |
RooFit::Binning(const RooAbsBinning&) | Use specified binning to draw dataset |
RooFit::Binning(const char* name) | Use binning with specified name to draw dataset |
RooFit::RefreshNorm() | Force refreshing for PDF normalization information in frame. If set, any subsequent PDF will normalize to this dataset, even if it is not the first one added to the frame. By default only the 1st dataset added to a frame will update the normalization information |
RooFit::Rescale(double f) | Rescale drawn histogram by given factor. |
RooFit::Cut(const char*) | Only plot entries that pass the given cut. Apart from cutting in continuous variables |
RooFit::CutRange(const char*) | Only plot data from given range. Separate multiple ranges with ",".
|
Histogram drawing options | |
RooFit::DrawOption(const char* opt) | Select ROOT draw option for resulting TGraph object |
RooFit::LineStyle(Style_t style) | Select line style by ROOT line style code, default is solid |
RooFit::LineColor(Color_t color) | Select line color by ROOT color code, default is black |
RooFit::LineWidth(Width_t width) | Select line with in pixels, default is 3 |
RooFit::MarkerStyle(Style_t style) | Select the ROOT marker style, default is 21 |
RooFit::MarkerColor(Color_t color) | Select the ROOT marker color, default is black |
RooFit::MarkerSize(Size_t size) | Select the ROOT marker size |
RooFit::FillStyle(Style_t style) | Select fill style, default is filled. |
RooFit::FillColor(Color_t color) | Select fill color by ROOT color code |
RooFit::XErrorSize(double frac) | Select size of X error bar as fraction of the bin width, default is 1 |
Misc. other options | |
RooFit::Name(const char* name) | Give curve specified name in frame. Useful if curve is to be referenced later |
RooFit::Invisible() | Add curve to frame, but do not display. Useful in combination AddTo() |
RooFit::AddTo(const char* name, double wgtSel, double wgtOther) | Add constructed histogram to already existing histogram with given name and relative weight factors |
Reimplemented in RooDataHist.
Definition at line 1712 of file RooAbsData.cxx.
Create and fill a histogram of the frame's variable and append it to the frame.
The frame variable must be one of the data sets dimensions.
The plot range and the number of plot bins is determined by the parameters of the plot variable of the frame (RooAbsReal::setPlotRange(), RooAbsReal::setPlotBins()).
The optional cut string expression can be used to select the events to be plotted. The cut specification may refer to any variable contained in the data set.
The drawOptions are passed to the TH1::Draw() method.
Reimplemented in RooDataHist, and RooDataHist.
Definition at line 1843 of file RooAbsData.cxx.
|
inlineoverridevirtual |
This method must be overridden when a class wants to print itself.
Reimplemented from TObject.
Definition at line 225 of file RooAbsData.h.
|
overridevirtual |
Print class name of dataset.
Reimplemented from RooPrintable.
Definition at line 799 of file RooAbsData.cxx.
|
overridevirtual |
Interface for detailed printing of object.
Reimplemented from RooPrintable.
Reimplemented in RooDataHist, and RooDataSet.
Definition at line 806 of file RooAbsData.cxx.
|
overridevirtual |
Print name of dataset.
Reimplemented from RooPrintable.
Definition at line 783 of file RooAbsData.cxx.
|
overridevirtual |
Print title of dataset.
Reimplemented from RooPrintable.
Definition at line 791 of file RooAbsData.cxx.
|
overridevirtual |
If one of the TObject we have a referenced to is deleted, remove the reference.
Reimplemented from TObject.
Definition at line 2458 of file RooAbsData.cxx.
RooFit::OwningPtr< RooAbsData > RooAbsData::reduce | ( | const char * | cut | ) | const |
Create a subset of the data set by applying the given cut on the data points.
The cut expression can refer to any variable in the data set. For cuts involving other variables, such as intermediate formula objects, use the equivalent reduce method specifying the as a RooFormulVar reference.
Definition at line 472 of file RooAbsData.cxx.
RooFit::OwningPtr< RooAbsData > RooAbsData::reduce | ( | const RooArgSet & | varSubset, |
const char * | cut = nullptr |
||
) | const |
Create a subset of the data set by applying the given cut on the data points and reducing the dimensions to the specified set.
The cut expression can refer to any variable in the data set. For cuts involving other variables, such as intermediate formula objects, use the equivalent reduce method specifying the as a RooFormulVar reference.
Definition at line 500 of file RooAbsData.cxx.
RooFit::OwningPtr< RooAbsData > RooAbsData::reduce | ( | const RooArgSet & | varSubset, |
const RooFormulaVar & | cutVar | ||
) | const |
Create a subset of the data set by applying the given cut on the data points and reducing the dimensions to the specified set.
The 'cutVar' formula variable is used to select the subset of data points to be retained in the reduced data collection.
Definition at line 530 of file RooAbsData.cxx.
RooFit::OwningPtr< RooAbsData > RooAbsData::reduce | ( | const RooCmdArg & | arg1, |
const RooCmdArg & | arg2 = {} , |
||
const RooCmdArg & | arg3 = {} , |
||
const RooCmdArg & | arg4 = {} , |
||
const RooCmdArg & | arg5 = {} , |
||
const RooCmdArg & | arg6 = {} , |
||
const RooCmdArg & | arg7 = {} , |
||
const RooCmdArg & | arg8 = {} |
||
) | const |
Create a reduced copy of this dataset.
The caller takes ownership of the returned dataset
The following optional named arguments are accepted
SelectVars(const RooArgSet& vars) | Only retain the listed observables in the output dataset |
Cut(const char* expression) | Only retain event surviving the given cut expression. |
Cut(const RooFormulaVar& expr) | Only retain event surviving the given cut formula. |
CutRange(const char* name) | Only retain events inside range with given name. Multiple CutRange arguments may be given to select multiple ranges. Note that this will also consider the variables that are not selected by SelectVars(). |
EventRange(int lo, int hi) | Only retain events with given sequential event numbers |
Name(const char* name) | Give specified name to output dataset |
Title(const char* name) | Give specified title to output dataset |
Definition at line 399 of file RooAbsData.cxx.
RooFit::OwningPtr< RooAbsData > RooAbsData::reduce | ( | const RooFormulaVar & | cutVar | ) | const |
Create a subset of the data set by applying the given cut on the data points.
The 'cutVar' formula variable is used to select the subset of data points to be retained in the reduced data collection.
Definition at line 485 of file RooAbsData.cxx.
|
protectedpure virtual |
Implemented in RooDataHist, and RooDataSet.
|
virtual |
Reimplemented in RooDataHist.
Definition at line 330 of file RooAbsData.cxx.
void RooAbsData::resetBuffers | ( | ) |
Definition at line 2344 of file RooAbsData.cxx.
|
protectedvirtual |
Internal method – Remove cached function values.
Definition at line 354 of file RooAbsData.cxx.
RooRealVar * RooAbsData::rmsVar | ( | const RooRealVar & | var, |
const char * | cutSpec = nullptr , |
||
const char * | cutRange = nullptr |
||
) | const |
Create a RooRealVar containing the RMS of observable 'var' in this dataset.
If cutSpec and/or cutRange are specified the moment is calculated on the subset of the data which pass the C++ cut specification expression 'cutSpec' and/or are inside the range named 'cutRange'
Definition at line 1094 of file RooAbsData.cxx.
Definition at line 370 of file RooAbsData.cxx.
|
static |
Definition at line 130 of file RooAbsData.cxx.
void RooAbsData::setDirtyProp | ( | bool | flag | ) |
Control propagation of dirty flags from observables in dataset.
Definition at line 378 of file RooAbsData.cxx.
void RooAbsData::setGlobalObservables | ( | RooArgSet const & | globalObservables | ) |
Sets the global observables stored in this data.
A snapshot of the observables will be saved.
[in] | globalObservables | The set of global observables to take a snapshot of. |
Definition at line 2473 of file RooAbsData.cxx.
|
overridevirtual |
Set the name of the TNamed.
WARNING: if the object is a member of a THashTable or THashList container the container must be Rehash()'ed after SetName(). For example the list of objects in the current directory is a THashList.
Reimplemented from TNamed.
Reimplemented in RooDataHist, and RooDataSet.
Definition at line 2488 of file RooAbsData.cxx.
|
overridevirtual |
Set all the TNamed parameters (name and title).
WARNING: if the name is changed and the object is a member of a THashTable or THashList container the container must be Rehash()'ed after SetName(). For example the list of objects in the current directory is a THashList.
Reimplemented from TNamed.
Reimplemented in RooDataHist, and RooDataSet.
Definition at line 2505 of file RooAbsData.cxx.
|
inline |
Definition at line 244 of file RooAbsData.h.
|
inline |
Definition at line 245 of file RooAbsData.h.
|
virtual |
Split the dataset into subsets based on states of a categorical variable in this dataset.
Returns a list of sub-datasets, which each dataset named after a given state name in the splitCat
. The observables splitCat
itself is no longer present in the sub-datasets.
splitCat | The categorical variable used for splitting the dataset. |
createEmptyDataSets | Flag indicating whether to create empty datasets for missing categories (false by default). |
nullptr
if an error occurs. Definition at line 1552 of file RooAbsData.cxx.
|
virtual |
Split the dataset into subsets based on the channels of a RooSimultaneous.
Returns a list of sub-datasets, which each dataset named after the applicable state name of the RooSimultaneous index category. The index category itself is no longer present in the sub-datasets. The sub-datasets only contain variables that the pdf for the corresponding channel depends on.
simPdf | The simultaneous pdf used for splitting the dataset. |
createEmptyDataSets | Flag indicating whether to create empty datasets for missing categories (false by default). |
nullptr
if an error occurs. Definition at line 1584 of file RooAbsData.cxx.
double RooAbsData::standMoment | ( | const RooRealVar & | var, |
double | order, | ||
const char * | cutSpec = nullptr , |
||
const char * | cutRange = nullptr |
||
) | const |
Calculate standardized moment.
[in] | var | Variable to be used for calculating the moment. |
[in] | order | Order of the moment. |
[in] | cutSpec | If specified, the moment is calculated on the subset of the data which pass the C++ cut specification expression 'cutSpec' |
[in] | cutRange | If specified, calculate inside the range named 'cutRange' (also applies cut spec) |
Definition at line 828 of file RooAbsData.cxx.
|
virtual |
Implementation back-end of statOn() method with named arguments.
Definition at line 1205 of file RooAbsData.cxx.
|
virtual |
Add a box with statistics information to the specified frame.
By default a box with the event count, mean and rms of the plotted variable is added.
The following optional named arguments are accepted
What(const char* whatstr) | Controls what is printed: "N" = count, "M" is mean, "R" is RMS. | ||||||||
Format(const char* optStr) |
| ||||||||
Format(const char* what,...) | Parameter formatting options.
| ||||||||
Label(const chat* label) | Add header label to parameter box | ||||||||
Layout(double xmin, double xmax, double ymax) | Specify relative position of left,right side of box and top of box. Position of bottom of box is calculated automatically from number lines in box | ||||||||
Cut(const char* expression) | Apply given cut expression to data when calculating statistics | ||||||||
CutRange(const char* rangeName) | Only consider events within given range when calculating statistics. Multiple CutRange() argument may be specified to combine ranges. |
The RooAbsData::statOn() function is pythonized with the command argument pythonization. The keywords must correspond to the CmdArgs of the function.
Definition at line 1152 of file RooAbsData.cxx.
|
inline |
Definition at line 77 of file RooAbsData.h.
|
inline |
Definition at line 78 of file RooAbsData.h.
|
overridevirtual |
Stream an object of class RooAbsData.
Reimplemented from TObject.
Reimplemented in RooDataHist, RooDataSet, and RooTreeData.
Definition at line 2374 of file RooAbsData.cxx.
|
inline |
Definition at line 366 of file RooAbsData.h.
|
pure virtual |
Return effective number of entries in dataset, i.e., sum all weights.
Implemented in RooDataHist, and RooDataSet.
|
pure virtual |
Return effective number of entries in dataset inside range or after cuts, i.e., sum certain weights.
[in] | cutSpec | Apply given cut when counting (e.g. 0 < x && x < 5 ). Passing "1" selects all events. |
[in] | cutRange | If the observables have a range with this name, only count events inside this range. |
Implemented in RooDataHist, and RooDataSet.
double RooAbsData::sumEntriesW2 | ( | ) | const |
Return sum of squared weights of this data.
Definition at line 2516 of file RooAbsData.cxx.
|
virtual |
Create and fill a 1-dimensional table for given category column This functions is the equivalent of plotOn() for category dimensions.
The optional cut string expression can be used to select the events to be tabulated The cut specification may refer to any variable contained in the data set
The option string is currently not used
Definition at line 2144 of file RooAbsData.cxx.
|
virtual |
Construct table for product of categories in catSet.
Definition at line 757 of file RooAbsData.cxx.
const TTree * RooAbsData::tree | ( | ) | const |
Return a pointer to the TTree which stores the data.
Returns a nullpointer if vector-based storage is used. The RooAbsData remains owner of the tree. GetClonedTree() can be used to get a tree even if the internal storage does not use one.
Definition at line 2417 of file RooAbsData.cxx.
|
inline |
Returns a unique ID that is different for every instantiated RooAbsData object.
This ID can be used whether two RooAbsData are the same object, which is safer than memory address comparisons that might result in false positives when memory is reused.
Definition at line 308 of file RooAbsData.h.
|
pure virtual |
Implemented in RooDataHist, and RooDataSet.
|
inlinevirtual |
Return the asymmetric errors on the current weight.
See also weightError(ErrorType) const for symmetric error.
[out] | lo | Low error. |
[out] | hi | High error. |
Reimplemented in RooDataHist, and RooDataSet.
Definition at line 122 of file RooAbsData.h.
Return the symmetric error on the current weight.
See also weightError(double&,double&,ErrorType) const for asymmetric errors.
Reimplemented in RooDataHist, and RooDataSet.
Definition at line 112 of file RooAbsData.h.
|
pure virtual |
Implemented in RooDataHist, and RooDataSet.
|
friend |
Definition at line 332 of file RooAbsData.h.
|
friend |
Definition at line 333 of file RooAbsData.h.
|
friend |
Definition at line 335 of file RooAbsData.h.
|
protected |
! External variables cached with this data set
Definition at line 349 of file RooAbsData.h.
|
protected |
Data storage implementation.
Definition at line 351 of file RooAbsData.h.
|
protected |
Snapshot of global observables.
Definition at line 355 of file RooAbsData.h.
|
mutableprotected |
! De-duplicated name pointer. This will be equal for all objects with the same name.
Definition at line 357 of file RooAbsData.h.
|
protected |
Owned external components.
Definition at line 353 of file RooAbsData.h.
|
private |
!
Definition at line 364 of file RooAbsData.h.
|
protected |
Dimensions of this data set.
Definition at line 348 of file RooAbsData.h.
|
staticprotected |
Definition at line 312 of file RooAbsData.h.
|
protected |
Definition at line 314 of file RooAbsData.h.