Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::R::TRFunctionImport Class Reference

This is a class to pass functions from ROOT to R.

TRFunctionImport class

The TRFunctionImport class lets you call R's functions to ROOT's environment
The object associated to this class have a set of overloaded operators to use the object like function

#include<TRInterface.h>
using namespace ROOT::R;
void Function()
{
////////////////////////////////////////
//defining functions to be used from R//
////////////////////////////////////////
TRFunctionImport list("list");
TRFunctionImport asformula("as.formula");
TRFunctionImport nls("nls");
TRFunctionImport confint("confint");
TRFunctionImport summary("summary");
TRFunctionImport print("print");
TRFunctionImport plot("plot");
TRFunctionImport lines("lines");
TRFunctionImport devnew("dev.new");
TRFunctionImport devoff("dev.off");
TRFunctionImport min("min");
TRFunctionImport max("max");
TRFunctionImport seq("seq");
TRFunctionImport predict("predict");
r<<"options(device='png')";//enable plot in png file
////////////////////////
//doing the procedure //
////////////////////////
TRObject xdata = c(-2,-1.64,-1.33,-0.7,0,0.45,1.2,1.64,2.32,2.9);
TRObject ydata = c(0.699369,0.700462,0.695354,1.03905,1.97389,2.41143,1.91091,0.919576,-0.730975,-1.42001);
data["xdata"]=xdata;
data["ydata"]=ydata;
//fit = nls(ydata ~ p1*cos(p2*xdata) + p2*sin(p1*xdata), start=list(p1=1,p2=0.2)) <- R code
TRObject fit = nls(asformula("ydata ~ p1*cos(p2*xdata) + p2*sin(p1*xdata)"),Label["data"]=data, Label["start"]=list(Label["p1"]=1,Label["p2"]=0.2));
print(summary(fit));
print(confint(fit));
devnew("Fitting Regression");
plot(xdata,ydata);
TRObject xgrid=seq(min(xdata),max(xdata),Label["len"]=10);
lines(xgrid,predict(fit,xgrid),Label["col"] = "green");
devoff();
}
ROOT::R::TRInterface & r
Definition Object.C:4
#define c(i)
Definition RSha256.hxx:101
Double_t(* Function)(Double_t)
Definition Functor.C:4
This is a class to create DataFrames from ROOT to R.
This is a class to pass functions from ROOT to R.
ROOT R was implemented using the R Project library and the modules Rcpp and RInside
static TRInterface & Instance()
static method to get an TRInterface instance reference
void SetVerbose(Bool_t status)
Method to set verbose mode, that produce extra output.
This is a class to get ROOT's objects from R's objects.
Definition TRObject.h:70
namespace associated R package for ROOT.
Definition RExports.h:56
const Rcpp::internal::NamedPlaceHolder & Label

Output

Formula: ydata ~ p1 * cos(p2 * xdata) + p2 * sin(p1 * xdata)
Parameters:
Estimate Std. Error t value Pr(>|t|)
p1 1.881851 0.027430 68.61 2.27e-12 ***
p2 0.700230 0.009153 76.51 9.50e-13 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.08202 on 8 degrees of freedom
Number of iterations to convergence: 7
Achieved convergence tolerance: 2.189e-06
Waiting for profiling to be done...
2.5% 97.5%
p1 1.8206081 1.9442365
p2 0.6794193 0.7209843
#define e(i)
Definition RSha256.hxx:103
double cos(double)
double sin(double)
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
Definition TObject.cxx:893
for(Int_t i=0;i< n;i++)
Definition legend1.C:18

Users Guide

https://oproject.org/pages/ROOT R Users Guide

Definition at line 119 of file TRFunctionImport.h.

Public Member Functions

 TRFunctionImport (const TRFunctionImport &fun)
 TRFunctionImport copy constructor.
 
 TRFunctionImport (const TString &name)
 TRFunctionImport constructor.
 
 TRFunctionImport (const TString &name, const TString &ns)
 TRFunctionImport constructor.
 
 TRFunctionImport (SEXP obj)
 TRFunctionImport constructor.
 
 TRFunctionImport (TRObject &obj)
 TRFunctionImport constructor.
 
 ~TRFunctionImport ()
 
SEXP operator() ()
 
- 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 Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility.
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method.
 
virtual void Copy (TObject &object) const
 Copy this to obj.
 
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 Draw (Option_t *option="")
 Default Draw method for all objects.
 
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 const char * GetName () const
 Returns 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 const char * GetTitle () const
 Returns title of object.
 
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.
 
virtual ULong_t Hash () const
 Return hash value for this object.
 
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)
 
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
 
virtual Bool_t IsSortable () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout.
 
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 void Print (Option_t *option="") const
 This method must be overridden when a class wants to print itself.
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory.
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list.
 
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.
 

Protected Member Functions

 TRFunctionImport (const Rcpp::Function &fun)
 TRFunctionImport constructor for Rcpp::DataFrame.
 
- 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

Rcpp::Function * f
 

Friends

TRFunctionImport Rcpp::as (SEXP)
 
SEXP Rcpp::wrap (const TRFunctionImport &f)
 
class TRInterface
 

Additional Inherited Members

- 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)
}
 
- Static Public Member Functions inherited from TObject
static Long_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.
 
- Protected Types inherited from TObject
enum  { kOnlyPrepStep = BIT(3) }
 

#include <TRFunctionImport.h>

Inheritance diagram for ROOT::R::TRFunctionImport:
[legend]

Constructor & Destructor Documentation

◆ TRFunctionImport() [1/6]

ROOT::R::TRFunctionImport::TRFunctionImport ( const Rcpp::Function &  fun)
inlineprotected

TRFunctionImport constructor for Rcpp::DataFrame.

Parameters
funraw function object from Rcpp

Definition at line 131 of file TRFunctionImport.h.

◆ TRFunctionImport() [2/6]

TRFunctionImport::TRFunctionImport ( const TString name)

TRFunctionImport constructor.

Parameters
namename of function from R

Definition at line 33 of file TRFunctionImport.cxx.

◆ TRFunctionImport() [3/6]

TRFunctionImport::TRFunctionImport ( const TString name,
const TString ns 
)

TRFunctionImport constructor.

Parameters
namename of function from R
nsnamespace of function from R

Definition at line 39 of file TRFunctionImport.cxx.

◆ TRFunctionImport() [4/6]

TRFunctionImport::TRFunctionImport ( const TRFunctionImport fun)

TRFunctionImport copy constructor.

Parameters
funother TRFunctionImport

Definition at line 27 of file TRFunctionImport.cxx.

◆ TRFunctionImport() [5/6]

TRFunctionImport::TRFunctionImport ( SEXP  obj)

TRFunctionImport constructor.

Parameters
objraw R object

Definition at line 51 of file TRFunctionImport.cxx.

◆ TRFunctionImport() [6/6]

TRFunctionImport::TRFunctionImport ( TRObject obj)

TRFunctionImport constructor.

Parameters
objTRObject object

Definition at line 45 of file TRFunctionImport.cxx.

◆ ~TRFunctionImport()

ROOT::R::TRFunctionImport::~TRFunctionImport ( )
inline

Definition at line 164 of file TRFunctionImport.h.

Member Function Documentation

◆ operator()()

SEXP ROOT::R::TRFunctionImport::operator() ( )
inline

Definition at line 168 of file TRFunctionImport.h.

Friends And Related Symbol Documentation

◆ Rcpp::as

TRFunctionImport Rcpp::as ( SEXP  )
friend

◆ Rcpp::wrap

SEXP Rcpp::wrap ( const TRFunctionImport f)
friend

◆ TRInterface

friend class TRInterface
friend

Definition at line 120 of file TRFunctionImport.h.

Member Data Documentation

◆ f

Rcpp::Function* ROOT::R::TRFunctionImport::f
protected

Definition at line 125 of file TRFunctionImport.h.

Libraries for ROOT::R::TRFunctionImport:

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