计算Inv Chi Squared Java

那么我正在为java编写一个测试模拟subjet的pseudoRandom数字,我需要计算Chi平方的倒数,所以我有alpha和度数as you can see here。计算Inv Chi Squared Java

的书我读,利用Excel函数Excel ChiSQ.INV这样的:

CHISQ.INV(probability,deg_freedom)

CHISQ.INV(0.025,39) = 58.12005973 < - 这个值是什么,我需要计算

事情是我使用的是表计算卡方的平方,但我认为有一些方法来与计算机计算,我发现这个类,但我仍然不知道它是如何工作的ChiSquaredDistribution Apache Commons

因此,目标是用java或用Java库计算Chi Squared Inv。

ChiSquaredDistribution x2 = new ChiSquaredDistribution(1, 0.05); 

System.out.println(x2.cumulativeProbability(1.96));

System.out.println(x2.getNumericalVariance());

输出:

0.8384866815324579

2.0

回答:

的问题是计算卡方功能39个自由度,并用95%的置信水平,所以alpha是5%。 as you can see here. 这是Excel函数:

CHISQ.INV(probability,deg_freedom) 

CHISQ.INV(0.025,39) = 58.12005973

为了计算我问在Java中值,是1-(阿尔法/ 2)= 1-(0.05/2)= 0.975

所以在Java中使用Apache Commons Library:

ChiSquaredDistribution x2 = new ChiSquaredDistribution(degreesOfFreedom); 

double result = x2.inverseCumulativeProbability(alpha);

ChiSquaredDistribution x2 = new ChiSquaredDistribution(39);

System.out.println(x2.inverseCumulativeProbability(0.975));

输出:

58.12005973444771

结果看起来与excel函数几乎一样,可能是书本错误(58.1200541)或四舍五入。

以上是 计算Inv Chi Squared Java 的全部内容, 来源链接: utcz.com/qa/258603.html

回到顶部