1#ifndef TMVA_RSTANDARDSCALER
2#define TMVA_RSTANDARDSCALER
25 std::vector<T>
Compute(
const std::vector<T>&
x);
29 void Save(std::string_view title, std::string_view
filename);
36 file->GetObject(title.data(), obj);
53 const auto shape =
x.GetShape();
54 if (shape.size() != 2)
55 throw std::runtime_error(
"Can only fit to input tensor of rank 2.");
59 fStds.resize(shape[1]);
62 for (std::size_t
i = 0;
i < shape[0];
i++) {
63 for (std::size_t j = 0; j < shape[1]; j++) {
67 for (std::size_t
i = 0;
i < shape[1];
i++) {
72 for (std::size_t
i = 0;
i < shape[0];
i++) {
73 for (std::size_t j = 0; j < shape[1]; j++) {
77 for (std::size_t
i = 0;
i < shape[1];
i++) {
84 const auto size =
x.size();
86 throw std::runtime_error(
"Size of input vector is not equal to number of fitted variables.");
88 std::vector<T>
y(
size);
89 for (std::size_t
i = 0;
i <
size;
i++) {
98 const auto shape =
x.GetShape();
99 if (shape.size() != 2)
100 throw std::runtime_error(
"Can only compute output for input tensor of rank 2.");
101 if (shape[1] !=
fMeans.size())
102 throw std::runtime_error(
"Second dimension of input tensor is not equal to number of fitted variables.");
105 for (std::size_t
i = 0;
i < shape[0];
i++) {
106 for (std::size_t j = 0; j < shape[1]; j++) {
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char filename
static TFile * Open(const char *name, Option_t *option="", const char *ftitle="", Int_t compress=ROOT::RCompressionSetting::EDefaults::kUseCompiledDefault, Int_t netopt=0)
Create / open a file.
void Save(std::string_view title, std::string_view filename)
std::vector< T > GetMeans() const
void Fit(const RTensor< T > &x)
std::vector< T > GetStds() const
RStandardScaler()=default
std::vector< T > Compute(const std::vector< T > &x)
RTensor is a container with contiguous memory and shape information.
create variable transformations