Loading [MathJax]/extensions/tex2jax.js
Logo ROOT  
Reference Guide
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Loading...
Searching...
No Matches
Function.C File Reference

Detailed Description

View in nbviewer Open in SWAN

using namespace ROOT::R;
void Function()
{
// Defining functions to be used from R
TRFunctionImport rlist("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 devcur("dev.cur");
TRFunctionImport rmin("min");
TRFunctionImport rmax("max");
TRFunctionImport seq("seq");
TRFunctionImport predict("predict");
r<<"options(device='pdf')";
// 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))
TRObject fit = nls(asformula("ydata ~ p1*cos(p2*xdata) + p2*sin(p1*xdata)"),Label["data"]=data, Label["start"]=rlist(Label["p1"]=1,Label["p2"]=0.2));
print(summary(fit));
print(confint(fit));
if (!gROOT->IsBatch()) {
devnew("Fitting Regression");
plot(xdata,ydata);
TRObject xgrid=seq(rmin(xdata),rmax(xdata),Label["len"]=10);
lines(xgrid,predict(fit,xgrid),Label["col"] = "green");
devoff(Label["which"] = devcur() );
}
}
ROOT::R::TRInterface & r
Definition Object.C:4
#define c(i)
Definition RSha256.hxx:101
#define gROOT
Definition TROOT.h:404
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.
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:53
Author

Definition in file Function.C.