{ TRandom3 rnd; TNtupleD *nt = new TNtupleD("nt","random data","x"); for(int i=0; i<100000; i++) { double x = rnd.Uniform(-1.,1.); nt->Fill(&x); } double mean = 0., variance = 0.; for(int i=0; i<nt->GetEntries(); i++) { nt->GetEntry(i); double x = nt->GetArgs()[0]; mean += x; variance += x*x; } mean /= nt->GetEntries(); variance = variance/nt->GetEntries() - mean*mean; printf("Mean: %g\n",mean); printf("Variance: %g\n",variance); }