public void ConstructorTest5()
{
Accord.Math.Tools.SetupGenerator(0);
double[] unif = UniformContinuousDistribution.Standard.Generate(10000);
double[] norm = NormalDistribution.Standard.Generate(10000);
var u = UniformContinuousDistribution.Standard;
var n = NormalDistribution.Standard;
{
var chi = new ChiSquareTest(unif, u);
Assert.AreEqual(2.7011909090910131, chi.Statistic, 1e-6);
Assert.AreEqual(10, chi.DegreesOfFreedom);
Assert.AreEqual(0.98760847271849528, chi.PValue, 1e-6);
Assert.IsFalse(chi.Significant);
}
{
var chi = new ChiSquareTest(unif, n);
Assert.AreEqual(14865.499690909099, chi.Statistic, 1e-6);
Assert.AreEqual(10, chi.DegreesOfFreedom);
Assert.AreEqual(0, chi.PValue, 1e-6);
Assert.IsTrue(chi.Significant);
}
{
var chi = new ChiSquareTest(norm, u);
Assert.AreEqual(3934.3426909090917, chi.Statistic, 1e-6);
Assert.AreEqual(10, chi.DegreesOfFreedom);
Assert.AreEqual(0, chi.PValue, 1e-6);
Assert.IsTrue(chi.Significant);
}
{
var chi = new ChiSquareTest(norm, n);
Assert.AreEqual(6.2902909090909525, chi.Statistic, 1e-6);
Assert.AreEqual(10, chi.DegreesOfFreedom);
Assert.AreEqual(0.79031311920555392, chi.PValue, 1e-6);
Assert.IsFalse(chi.Significant);
}
}