Accord.Tests.Statistics.Distributions.Univariate.Continuous.BetaPrimeDistributionTest.Confirm_BetPrimeDistribution_Relative_to_F_Distribution C# (CSharp) Method

Confirm_BetPrimeDistribution_Relative_to_F_Distribution() private method

        public void Confirm_BetPrimeDistribution_Relative_to_F_Distribution()
        {
            double alpha = 4.0d;
            double beta = 6.0d;

            FDistribution fdist = new FDistribution((int)alpha * 2, (int)beta * 2);
            double fMean = fdist.Mean;
            double fPdf = (beta / alpha) * fdist.ProbabilityDensityFunction(4.0d);
            double fCdf = fdist.DistributionFunction(4.0d);

            var betaPrimeDist = new BetaPrimeDistribution(alpha, beta);
            double bpMean = (beta / alpha) * betaPrimeDist.Mean;
            double bpPdf = betaPrimeDist.ProbabilityDensityFunction((alpha / beta) * 4.0d);
            double bpCdf = betaPrimeDist.DistributionFunction((alpha / beta) * 4.0d);

            Assert.AreEqual(fMean, bpMean, 0.00000001, "mean should be equal");
            Assert.AreEqual(fPdf, bpPdf, 0.00000001, "probability density should be equal");
            Assert.AreEqual(fCdf, bpCdf, 0.00000001, "cumulative distribution should be equal");

            //Beta Prime distribution is a scaled version of Pearson Type VI, which itself is scale of F distribution
        }