C#中是否有任何函数返回与卡方拟合优度相关的p值?

时间:2014-03-27 09:48:01

标签: c# asp.net chi-squared p-value

我是新来的,我的英语不是很好,所以我会尽可能地解释。 我正在ASP.NETC#进行关于隐写分析的网络应用程序。 我正在寻找互联网一个函数来计算观察到的显着性水平,或卡方检验中的p值 对于我的算法,我在Java中找到它:

这是mi搜索的结果:

chi[block]= chiSquareTest(expectedValues, pod);

chiSquareTest(double[] expected, long[] observed)

  • 返回观察到的显着性水平或p值
  • 与卡方拟合优度测试相比较
  • 观察到的频率计入预期阵列中的频率。

我的问题是,C#中是否有任何返回相同参数的等效函数?

提前谢谢你,

安娜。

3 个答案:

答案 0 :(得分:3)

MathNet nugetpackage包含ChiSquared分布 - 您可以获得累积或反向累积。

ChiSquared c = new ChiSquared(degreesOfFreedom);
return c.CumulativeDistribution(testValue);

答案 1 :(得分:0)

我怀疑是否有内置功能。

您应该尝试查找包含该功能的库或自己实现它。 快速搜索给了我这个 http://www.alglib.net/specialfunctions/distributions/chisquare.php

http://www.codeproject.com/Articles/432194/How-to-Calculate-the-Chi-Squared-P-Value

答案 2 :(得分:0)

我知道这是一个老问题,但是我认为我还是会发布。

Accord.NET框架具有一个库和一个NuGet软件包Accord.Statistics,该软件包具有一个ChiSquareTest class,可以在问题中提到的类似庄园中使用:

ChiSquareTest chiSquareTest = new ChiSquareTest(observedArray, expectedArray, DOF);
chiSquareTest.PValue; // gets p-value
chiSquareTest.Significant; // true if statistically significant

唯一的是,您必须计算自由度-自由度。