Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
tmva004_RStandardScaler.C
Go to the documentation of this file.
1/// \file
2/// \ingroup tutorial_tmva
3/// \notebook -nodraw
4/// This tutorial illustrates the usage of the standard scaler as preprocessing
5/// method.
6///
7/// \macro_code
8/// \macro_output
9///
10/// \date July 2019
11/// \author Stefan Wunsch
12
13using namespace TMVA::Experimental;
14
15void tmva004_RStandardScaler()
16{
17 // Load data used to fit the parameters
18 ROOT::RDataFrame df("TreeS", "http://root.cern/files/tmva_class_example.root");
19 auto x = AsTensor<float>(df);
20
21 // Create standard scaler and fit to data
23 scaler.Fit(x);
24
25 // Compute transformation
26 auto y = scaler.Compute(x);
27
28 // Plot first variable scaled and unscaled
29 TH1F h1("h1", ";x_{4};N_{Events}", 20, -4, 4);
30 TH1F h2("h2", ";x_{4};N_{Events}", 20, -4, 4);
31 for (std::size_t i = 0; i < x.GetShape()[0]; i++) {
32 h1.Fill(x(i, 3));
33 h2.Fill(y(i, 3));
34 }
37 h2.SetLineWidth(2);
38 h2.SetLineColor(kBlue);
39
41 auto c = new TCanvas("", "", 800, 800);
42 h2.Draw("HIST");
43 h1.Draw("HIST SAME");
44
45 TLegend legend(0.7, 0.7, 0.89, 0.89);
46 legend.SetBorderSize(0);
47 legend.AddEntry("h1", "Unscaled", "l");
48 legend.AddEntry("h2", "Scaled", "l");
49 legend.Draw();
50
51 c->DrawClone();
52}
#define c(i)
Definition RSha256.hxx:101
@ kRed
Definition Rtypes.h:66
@ kBlue
Definition Rtypes.h:66
R__EXTERN TStyle * gStyle
Definition TStyle.h:433
ROOT's RDataFrame offers a modern, high-level interface for analysis of data stored in TTree ,...
virtual void SetLineWidth(Width_t lwidth)
Set the line width.
Definition TAttLine.h:43
virtual void SetLineColor(Color_t lcolor)
Set the line color.
Definition TAttLine.h:40
The Canvas class.
Definition TCanvas.h:23
1-D histogram with a float per channel (see TH1 documentation)
Definition TH1.h:621
virtual Int_t Fill(Double_t x)
Increment bin with abscissa X by 1.
Definition TH1.cxx:3344
void Draw(Option_t *option="") override
Draw this histogram with options.
Definition TH1.cxx:3066
This class displays a legend box (TPaveText) containing several legend entries.
Definition TLegend.h:23
void Fit(const RTensor< T > &x)
std::vector< T > Compute(const std::vector< T > &x)
void SetOptStat(Int_t stat=1)
The type of information printed in the histogram statistics box can be selected via the parameter mod...
Definition TStyle.cxx:1636
Double_t y[n]
Definition legend1.C:17
Double_t x[n]
Definition legend1.C:17
TH1F * h1
Definition legend1.C:5