14void fill_tree(
const char *treeName,
const char *fileName)
18 d.Define(
"b1", [&i]() {
return i; })
25 .Snapshot(treeName, fileName);
32 auto fileName =
"df006_ranges.root";
33 auto treeName =
"myTree";
34 fill_tree(treeName, fileName);
41 auto c_all =
d.Count();
44 auto d_0_30 =
d.Range(0, 30);
45 auto c_0_30 = d_0_30.Count();
48 auto d_15_end =
d.Range(15, 0);
49 auto c_15_end = d_15_end.Count();
52 auto d_15_end_3 =
d.Range(15, 0, 3);
53 auto c_15_end_3 = d_15_end_3.Count();
57 auto d_0_50 =
d.Range(0, 50);
58 auto c_0_50_odd_b1 = d_0_50.Filter(
"1 == b1 % 2").Count();
63 auto c_0_3_after_even_b1 =
d.Filter(
"0 == b1 % 2").Range(0, 3).Count();
66 cout <<
"Usage of ranges:\n"
67 <<
" - All entries: " << *c_all << endl
68 <<
" - Entries from 0 to 30: " << *c_0_30 << endl
69 <<
" - Entries from 15 onwards: " << *c_15_end << endl
70 <<
" - Entries from 15 onwards in steps of 3: " << *c_15_end_3 << endl
71 <<
" - Entries from 0 to 50, odd only: " << *c_0_50_odd_b1 << endl
72 <<
" - First three entries of all even entries: " << *c_0_3_after_even_b1 << endl;
ROOT's RDataFrame offers a high level interface for analyses of data stored in TTrees,...