Accord.Statistics.Distributions.Univariate.BirnbaumSaundersDistribution.InverseDistributionFunction C# (CSharp) Method

InverseDistributionFunction() public method

Gets the inverse of the cumulative distribution function (icdf) for this distribution evaluated at probability p. This function is also known as the Quantile function.
public InverseDistributionFunction ( double p ) : double
p double A probability value between 0 and 1.
return double
        public override double InverseDistributionFunction(double p)
        {
            double z = Normal.Inverse(p);
            double a = z + Math.Sqrt(4 + shape * (z * z));

            return (1.0 / 4.0) * a * a;
        }

Usage Example

コード例 #1
0
        public void ConstructorTest1()
        {
            var bs = new BirnbaumSaundersDistribution(shape: 0.42);

            double mean = bs.Mean;     // 1.0882000000000001
            double median = bs.Median; // 1.0
            double var = bs.Variance;  // 0.21529619999999997

            double cdf = bs.DistributionFunction(x: 1.4); // 0.78956384911580346
            double pdf = bs.ProbabilityDensityFunction(x: 1.4); // 1.3618433601225426
            double lpdf = bs.LogProbabilityDensityFunction(x: 1.4); // 0.30883919386130815

            double ccdf = bs.ComplementaryDistributionFunction(x: 1.4); // 0.21043615088419654
            double icdf = bs.InverseDistributionFunction(p: cdf); // 2.0618330099769064

            double hf = bs.HazardFunction(x: 1.4); // 6.4715276077824093
            double chf = bs.CumulativeHazardFunction(x: 1.4); // 1.5585729930861034

            string str = bs.ToString(CultureInfo.InvariantCulture); // BirnbaumSaunders(x; μ = 0, β = 1, γ = 0.42)

            Assert.AreEqual(1.0882000000000001, mean);
            Assert.AreEqual(1.0, median);
            Assert.AreEqual(0.21529619999999997, var);
            Assert.AreEqual(1.5585729930861034, chf);
            Assert.AreEqual(0.78956384911580346, cdf);
            Assert.AreEqual(1.3618433601225426, pdf);
            Assert.AreEqual(0.30883919386130815, lpdf);
            Assert.AreEqual(6.4715276077824093, hf);
            Assert.AreEqual(0.21043615088419654, ccdf);
            Assert.AreEqual(2.0618330099769064, icdf);
            Assert.AreEqual("BirnbaumSaunders(x; μ = 0, β = 1, γ = 0.42)", str);
        }
All Usage Examples Of Accord.Statistics.Distributions.Univariate.BirnbaumSaundersDistribution::InverseDistributionFunction