public void BernoulliDistributionFit() { double p = 0.25; int n0 = 0; int n1 = 0; Random rng = new Random(3); for (int i = 0; i < 100; i++) { if (rng.NextDouble() < p) { n1++; } else { n0++; } } BernoulliFitResult fit = BernoulliDistribution.FitToSample(n0, n1); Assert.IsTrue(fit.P.ConfidenceInterval(0.95).ClosedContains(p)); Assert.IsTrue(fit.GoodnessOfFit.Probability > 0.05); Assert.IsTrue(fit.Parameters.Count == 1); Assert.IsTrue(fit.Parameters[0].Estimate == fit.P); }