使用 JSC 做 Wilcoxon signed-rank test

JSC is a project to extend the Java programming language and Java APIs (Application Programming Interfaces) to support educational and enterprise development of statistical software in Java.

 

http://www.jsc.nildram.co.uk/

 

看这篇文章的人应该都知道什么是 Wilcoxon signed-rank test , 以及这个 Test 主要用来做什么。 如果不清楚的同学请先移步 wiki: http://en.wikipedia.org/wiki/Wilcoxon_signed-rank_test。 

 

当然用 R 当然也能很容易做这个 test,有兴趣的同学请移步: http://www.r-tutor.com/elementary-statistics/non-parametric-methods/wilcoxon-signed-rank-test

 

这里我们主要讨论如何使用JSC这个库来做 Wilcoxon signed-rank test。

 

在使用之前可以先参照在线的 API: http://www.jsc.nildram.co.uk/api/jsc/onesample/WilcoxonTest.html

 

以下我们用个例子来说明:

 

WilcoxonTest(PairedData data, H1 alternative) , PairedData 对象可以使用一个N行2列的matrix构建。 H1 是 JSC 中的一个枚举类型,可以直接使用。

 

 

PairedData pData = new PairedData(g0_div, g1_div); //  g0_div 和 g1_div) 是两个等长的一维 double 数组,两个数组中的对应 index 对应的正是数据观测的一个pair。
 

 

 

if(g0_div.length>=500){ //当数据量大于500的时候,大样本可以认为接近正太分布,所以调用 .approxSP() 方法。
					if (less) { //Exception here.
						pValue = new WilcoxonTest(pData, H1.LESS_THAN).approxSP();
					}else {
						pValue = new WilcoxonTest(pData, H1.GREATER_THAN).approxSP();
					}
				}else { // 小样本,样本数小于 500,不需要假设样本服从正太分布。
// 这也是我们使用这个方法的目地所在。
					if (less) { //Exception here.
						pValue = new WilcoxonTest(pData, H1.LESS_THAN).exactSP();
					}else {
						pValue = new WilcoxonTest(pData, H1.GREATER_THAN).exactSP();
					}
				}
 

 

 

你可能感兴趣的:(java,statistics)