Question on RDataFrame, triggering event loop

Dear all,
I have a question to understand the proper usage of the RDataFrame

Let’s say I have :

RDataFrame df(*tuple); 

//
df_deef = df.Define(....)
   .Define(...);
auto df_a = df_deef.Filter( "A")
auto df_b = df_deef.Filter("B");

and several other things using df_a, df_b and df_deef.
//

To know exactly where the event loop is triggered and what to use to trigger the event loop which runs all …
is enough to do

df.Count()

or all results are collected for whatever final thing one is picking?

I mean al nodes are connected one to another such that whatever you access, trigger ALL bookkepeed actions?

Thanks in advance.

PS: is there in any case a recommended thing to do ?


ROOT Version: Not Provided
Platform: Not Provided
Compiler: Not Provided


That’s correct.

Just call GetValue() on any of the results, that will trigger the event loop and produce all results in the computation graph.

Thanks,
I wonder if it’s also safe to do :

            cout <<RED " Processeed " << *df.Count()<< "  entries "<<RESET<< endl;

after all bookkeping being the df the inittial RDataFrame created.

Yes of course it’s safe :smile:

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.