@eguiraud I am having some troubles…
When I try to create TTrees with RDataFrame and add them as friends to the chain I encounter:
Error in <AddFriend>: Tree 'test1' has the kEntriesReshuffled bit set, and cannot be used as friend nor can be added as a friend unless the main tree has a TTreeIndex on the friend tree 'test2'. You can also unset the bit manually if you know what you are doing.
I tried something like:
import ROOT
ROOT.EnableImplicitMT()
ROOT.RDataFrame(10000000).Define("x", "gRandom->Rndm()").Snapshot("test1", "test1.root");
ROOT.RDataFrame(10000000).Define("x", "gRandom->Rndm()").Snapshot("test2", "test2.root");
f1 = ROOT.TFile("test1.root")
f2 = ROOT.TFile("test2.root")
t1 = f1.Get("test1")
t2 = f2.Get("test2")
t1.ResetBit(ROOT.TTree.EStatusBits.kEntriesReshuffled)
t2.ResetBit(ROOT.TTree.EStatusBits.kEntriesReshuffled)
ch = ROOT.TChain("test1")
ch.Add("test1.root")
ch.AddFriend("fr=test2", "test2.root")
df = ROOT.RDataFrame(ch).Filter(" rdfentry_ < 999999").Filter("if (rdfentry_ % 500000 == 0){cout<<rdfentry_<<endl;} return true;")
df = df.Define("y", "x*fr.x")
h = df.Histo1D(("h", "", 100, -10, 10), "y")
h.Draw()
but it fails… Any advice on how to compactly add Friends trees produces by the RDataFrame?
I tried to see this, but I find it hard to make useful in my case