日期:2014-05-16 浏览次数:20389 次
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(); } }?
?
?