This tutorial shows how the content of an RDataFrame can be converted to an RTensor object.
Author: Stefan Wunsch
This notebook tutorial was automatically generated with ROOTBOOK-izer from the macro found in the ROOT repository on Tuesday, March 19, 2024 at 07:19 PM.
using namespace TMVA::Experimental;
Creation of an RDataFrame with five entries filled with ascending numbers
ROOT::RDataFrame df(5);
auto df2 = df.Define("x", "1.f*rdfentry_").Define("y", "-1.f*rdfentry_");
Convert content of columns to an RTensor object
auto x = AsTensor<float>(df2);
std::cout << "RTensor from an RDataFrame:\n" << x << "\n\n";
RTensor from an RDataFrame: { { 0, -0 } { 1, -1 } { 2, -2 } { 3, -3 } { 4, -4 } }
The utility also supports reading only a part of the RDataFrame and different memory layouts.
auto x2 = AsTensor<float>(df2, {"x"}, MemoryLayout::ColumnMajor);
std::cout << "RTensor from a single column of the RDataFrame:\n" << x2 << "\n\n";
RTensor from a single column of the RDataFrame: { { 0 } { 1 } { 2 } { 3 } { 4 } }