ROOT
v6-20
Reference Guide
Function.C File Reference
Tutorials
»
R tutorials
Detailed Description
using namespace
ROOT::R
;
void
Function
()
{
auto
&
r
=
ROOT::R::TRInterface::Instance
();
r
.
SetVerbose
(1);
// Defining functions to be used from R
TRFunctionImport
c
(
"c"
);
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);
TRDataFrame
data;
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() );
}
}
r
ROOT::R::TRInterface & r
Definition:
Object.C:4
c
#define c(i)
Definition:
RSha256.hxx:101
TRDataFrame
TRDataFrame(const T1 &t1)
Definition:
TRDataFrame__ctors.h:17
gROOT
#define gROOT
Definition:
TROOT.h:415
Function
Double_t(* Function)(Double_t)
Definition:
Functor.C:4
ROOT::R::TRInterface::Instance
static TRInterface & Instance()
static method to get an TRInterface instance reference
Definition:
TRInterface.cxx:170
ROOT::R::TRInterface::SetVerbose
void SetVerbose(Bool_t status)
Method to set verbose mode, that produce extra output.
Definition:
TRInterface.cxx:117
ROOT::R
namespace associated R package for ROOT.
Definition:
RExports.h:56
ROOT::R::Label
const Rcpp::internal::NamedPlaceHolder & Label
Author
Definition in file
Function.C
.
tutorials
r
Function.C
ROOT v6-20 - Reference Guide Generated on Fri Apr 1 2022 00:24:44 (GVA Time) using Doxygen 1.9.4