Accord.Statistics.Testing.MultinomialTest.Compute C# (CSharp) Method

Compute() protected method

Computes the Multinomial test.
protected Compute ( int sampleSize, double observed, double expected ) : void
sampleSize int
observed double
expected double
return void
        protected void Compute(int sampleSize, double[] observed, double[] expected)
        {
            // Approximate using a Chi-Square distribution

            this.ObservedProportions = observed;
            this.HypothesizedProportions = expected;

            double sum = 0;
            for (int i = 0; i < ObservedProportions.Length; i++)
            {
                double e = sampleSize * expected[i];
                double u = sampleSize * observed[i] - e;
                sum += (u * u) / e;
            }

            base.Compute(sum, observed.Length - 1);
        }