List of usage examples for org.apache.commons.math3.stat.descriptive.moment StandardDeviation StandardDeviation
public StandardDeviation(boolean isBiasCorrected)
isBiasCorrected
property. From source file:com.facebook.presto.operator.aggregation.TestDoubleStdDevPopAggregation.java
@Override public Number getExpectedValue(int start, int length) { if (length == 0) { return null; }/* w w w. j a va2s.c o m*/ double[] values = new double[length]; for (int i = 0; i < length; i++) { values[i] = start + i; } StandardDeviation stdDev = new StandardDeviation(false); return stdDev.evaluate(values); }
From source file:com.itemanalysis.psychometrics.irt.equating.MeanSigmaMethod.java
private void evaluate() { Mean mX = new Mean(); StandardDeviation sdX = new StandardDeviation(populationStdDev); Mean mY = new Mean(); StandardDeviation sdY = new StandardDeviation(populationStdDev); ItemResponseModel irmX;//from ww w . j a va2 s .c o m ItemResponseModel irmY; for (String s : sY) { irmX = itemFormX.get(s); irmY = itemFormY.get(s); irmX.incrementMeanSigma(mX, sdX); irmY.incrementMeanSigma(mY, sdY); } if (checkRaschModel()) { slope = 1.0; } else { slope = sdY.getResult() / sdX.getResult(); } intercept = mY.getResult() - slope * mX.getResult(); }
From source file:com.itemanalysis.psychometrics.measurement.TestSummary.java
public TestSummary(int numberOfItems, int numberOfSubscales, ArrayList<Integer> cutScores, ArrayList<VariableAttributes> variableAttributes, boolean unbiased, boolean deletedReliability, boolean showCsem) { this.numberOfItems = numberOfItems; if (cutScores != null) { this.cutScores = new int[cutScores.size()]; int i = 0; for (Integer intgr : cutScores) { this.cutScores[i] = intgr.intValue(); i++;//from w w w .j a va 2 s .c o m } } this.variableAttributes = variableAttributes; this.unbiased = unbiased; this.deletedReliability = deletedReliability; this.showCsem = showCsem; stats = new DescriptiveStatistics(); stdDev = new StandardDeviation(unbiased); relMatrix = new CovarianceMatrix(variableAttributes); this.numberOfSubscales = numberOfSubscales; if (numberOfSubscales > 1) partRelMatrix = new CovarianceMatrix(numberOfSubscales); }
From source file:com.itemanalysis.psychometrics.measurement.TestSummary.java
public TestSummary(int numberOfItems, int numberOfSubscales, int[] cutScores, ArrayList<VariableAttributes> variableAttributes, boolean unbiased, boolean deletedReliability, boolean showCsem) { this.numberOfItems = numberOfItems; this.cutScores = cutScores; this.variableAttributes = variableAttributes; this.unbiased = unbiased; this.deletedReliability = deletedReliability; this.showCsem = showCsem; stats = new DescriptiveStatistics(); stdDev = new StandardDeviation(unbiased); relMatrix = new CovarianceMatrix(variableAttributes); this.numberOfSubscales = numberOfSubscales; if (numberOfSubscales > 1) partRelMatrix = new CovarianceMatrix(numberOfSubscales); }
From source file:com.graphhopper.jsprit.core.algorithm.termination.VariationCoefficientTermination.java
@Override public boolean isPrematureBreak(SearchStrategy.DiscoveredSolution discoveredSolution) { if (discoveredSolution.isAccepted()) { lastAccepted = discoveredSolution.getSolution(); solutionValues[currentIteration] = discoveredSolution.getSolution().getCost(); } else {/*from w w w . java 2s.c o m*/ if (lastAccepted != null) { solutionValues[currentIteration] = lastAccepted.getCost(); } else solutionValues[currentIteration] = Integer.MAX_VALUE; } if (currentIteration == (noIterations - 1)) { double mean = StatUtils.mean(solutionValues); double stdDev = new StandardDeviation(true).evaluate(solutionValues, mean); double variationCoefficient = stdDev / mean; if (variationCoefficient < variationCoefficientThreshold) { return true; } } return false; }
From source file:com.itemanalysis.psychometrics.measurement.TestSummary.java
public TestSummary(int numberOfItems, int numberOfSubscales, int[] cutScores, LinkedHashMap<VariableName, VariableAttributes> variableAttributeMap, boolean unbiased, boolean deletedReliability, boolean showCsem) { this.variableAttributes = new ArrayList<VariableAttributes>(); for (VariableName v : variableAttributeMap.keySet()) { this.variableAttributes.add(variableAttributeMap.get(v)); }//from ww w.jav a 2 s . c om this.unbiased = unbiased; this.numberOfItems = numberOfItems; this.cutScores = cutScores; this.deletedReliability = deletedReliability; this.showCsem = showCsem; stats = new DescriptiveStatistics(); stdDev = new StandardDeviation(unbiased); relMatrix = new CovarianceMatrix(variableAttributes); this.numberOfSubscales = numberOfSubscales; if (numberOfSubscales > 1) partRelMatrix = new CovarianceMatrix(numberOfSubscales); }
From source file:com.itemanalysis.psychometrics.irt.equating.MeanSigmaMethodTest.java
/** * Tests the calculations needed for mean/mean and mean/sigma scale linking. * Item parameters and true values obtained from example 2 from the STUIRT * program by Michael Kolen and colleagues. Note that the original example * used teh PARSCALE version of item parameters. These were converted to * ICL type parameters by subtracting a step from the item difficulty. * *//*w ww .j ava 2s . com*/ @Test public void mixedFormatDescriptiveStatisticsTestFormX() { System.out.println("Mixed format descriptive statistics test Form X"); ItemResponseModel[] irm = new ItemResponseModel[17]; irm[0] = new Irm3PL(0.751335, -0.897391, 0.244001, 1.7); irm[1] = new Irm3PL(0.955947, -0.811477, 0.242883, 1.7); irm[2] = new Irm3PL(0.497206, -0.858681, 0.260893, 1.7); irm[3] = new Irm3PL(0.724000, -0.123911, 0.243497, 1.7); irm[4] = new Irm3PL(0.865200, 0.205889, 0.319135, 1.7); irm[5] = new Irm3PL(0.658129, 0.555228, 0.277826, 1.7); irm[6] = new Irm3PL(1.082118, 0.950549, 0.157979, 1.7); irm[7] = new Irm3PL(0.988294, 1.377501, 0.084828, 1.7); irm[8] = new Irm3PL(1.248923, 1.614355, 0.181874, 1.7); irm[9] = new Irm3PL(1.116682, 2.353932, 0.246856, 1.7); irm[10] = new Irm3PL(0.438171, 3.217965, 0.309243, 1.7); irm[11] = new Irm3PL(1.082206, 4.441864, 0.192339, 1.7); double[] step1 = { 0, -1.09327, 1.101266 }; irm[12] = new IrmGPCM(0.269994, step1, 1.7); double[] step2 = { 0, 1.526148, 1.739176 }; irm[13] = new IrmGPCM(0.972506, step2, 1.7); double[] step3 = { 0, 1.362356, 5.566958 }; irm[14] = new IrmGPCM(0.378812, step3, 1.7); double[] step4 = { 0, 1.486566, -0.071229, 1.614823 }; irm[15] = new IrmGPCM(0.537706, step4, 1.7); double[] step5 = { 0, 1.425413, 2.630705, 3.242696 }; irm[16] = new IrmGPCM(0.554506, step5, 1.7); Mean discriminationX = new Mean(); Mean difficultyX = new Mean(); Mean difficultyMeanX = new Mean(); StandardDeviation difficultySdX = new StandardDeviation(false);//Do not correct for bias. Use N in the denominator, not N-1. for (int j = 0; j < 17; j++) { irm[j].incrementMeanMean(discriminationX, difficultyX); irm[j].incrementMeanSigma(difficultyMeanX, difficultySdX); } // System.out.println("Mean/mean descriptive statistics for Form X"); // System.out.println("a-mean: " + discriminationX.getResult()); // System.out.println("b-mean: " + difficultyX.getResult()); assertEquals("Mean/mean check: discrimination mean", 0.7719, Precision.round(discriminationX.getResult(), 4), 1e-5); assertEquals("Mean/mean check: difficulty mean", 1.3566, Precision.round(difficultyX.getResult(), 4), 1e-5); assertEquals("Mean/mean check: Number of difficulties (including steps) ", 24, difficultyX.getN(), 1e-3); // System.out.println(); // System.out.println("Mean/sigma descriptive statistics for Form X"); // System.out.println("b-mean: " + difficultyMeanX.getResult()); // System.out.println("b-sd: " + difficultySdX.getResult()); // System.out.println("b-N: " + difficultyMeanX.getN() + ", " + difficultySdX.getN()); assertEquals("Mean/sigma check: difficulty mean", 1.3566, Precision.round(difficultyMeanX.getResult(), 4), 1e-5); assertEquals("Mean/sigma check: difficulty sd", 1.6372, Precision.round(difficultySdX.getResult(), 4), 1e-5); assertEquals("Mean/sigma check: Number of difficulties (including steps) ", 24, difficultyMeanX.getN(), 1e-3); assertEquals("Mean/sigma check: Number of difficulties (including steps) ", 24, difficultySdX.getN(), 1e-3); }
From source file:com.itemanalysis.psychometrics.irt.equating.MeanSigmaMethodTest.java
/** * Tests the calculations needed for mean/mean and mean/sigma scale linking. * Item parameters and true values obtained from example 2 from the STUIRT * program by Michael Kolen and colleagues. Note that the original example * used teh PARSCALE version of item parameters. These were converted to * ICL type parameters by subtracting a step from the item difficulty. * *//* w w w . ja v a2 s. co m*/ @Test public void mixedFormatDescriptiveStatisticsTestFormY() { System.out.println("Mixed format descriptive statistics test Form Y"); ItemResponseModel[] irm = new ItemResponseModel[17]; irm[0] = new Irm3PL(0.887276, -1.334798, 0.134406, 1.7); irm[1] = new Irm3PL(1.184412, -1.129004, 0.237765, 1.7); irm[2] = new Irm3PL(0.609412, -1.464546, 0.15139, 1.7); irm[3] = new Irm3PL(0.923812, -0.576435, 0.240097, 1.7); irm[4] = new Irm3PL(0.822776, -0.476357, 0.192369, 1.7); irm[5] = new Irm3PL(0.707818, -0.235189, 0.189557, 1.7); irm[6] = new Irm3PL(1.306976, 0.242986, 0.165553, 1.7); irm[7] = new Irm3PL(1.295471, 0.598029, 0.090557, 1.7); irm[8] = new Irm3PL(1.366841, 0.923206, 0.172993, 1.7); irm[9] = new Irm3PL(1.389624, 1.380666, 0.238008, 1.7); irm[10] = new Irm3PL(0.293806, 2.02807, 0.203448, 1.7); irm[11] = new Irm3PL(0.885347, 3.152928, 0.195473, 1.7); double[] step1 = { 0, -1.387347, 0.399117 }; irm[12] = new IrmGPCM(0.346324, step1, 1.7); double[] step2 = { 0, 0.756514, 0.956014 }; irm[13] = new IrmGPCM(1.252012, step2, 1.7); double[] step3 = { 0, 0.975303, 4.676299 }; irm[14] = new IrmGPCM(0.392282, step3, 1.7); double[] step4 = { 0, 0.643405, -0.418869, 0.804394 }; irm[15] = new IrmGPCM(0.660841, step4, 1.7); double[] step5 = { 0, 0.641293, 1.750488, 2.53802 }; irm[16] = new IrmGPCM(0.669612, step5, 1.7); Mean discriminationX = new Mean(); Mean difficultyX = new Mean(); Mean difficultyMeanX = new Mean(); StandardDeviation difficultySdX = new StandardDeviation(false);//Do not correct for bias. Use N in the denominator, not N-1. for (int j = 0; j < 17; j++) { irm[j].incrementMeanMean(discriminationX, difficultyX); irm[j].incrementMeanSigma(difficultyMeanX, difficultySdX); } // System.out.println("Mean/mean descriptive statistics for Form X"); // System.out.println("a-mean: " + discriminationX.getResult()); // System.out.println("b-mean: " + difficultyX.getResult()); assertEquals("Mean/mean check: discrimination mean", 0.8820, Precision.round(discriminationX.getResult(), 4), 1e-5); assertEquals("Mean/mean check: difficulty mean", 0.6435, Precision.round(difficultyX.getResult(), 4), 1e-5); assertEquals("Mean/mean check: Number of difficulties (including steps) ", 24, difficultyX.getN(), 1e-3); // System.out.println(); // System.out.println("Mean/sigma descriptive statistics for Form X"); // System.out.println("b-mean: " + difficultyMeanX.getResult()); // System.out.println("b-sd: " + difficultySdX.getResult()); // System.out.println("b-N: " + difficultyMeanX.getN() + ", " + difficultySdX.getN()); assertEquals("Mean/sigma check: difficulty mean", 0.6435, Precision.round(difficultyMeanX.getResult(), 4), 1e-5); assertEquals("Mean/sigma check: difficulty sd", 1.4527, Precision.round(difficultySdX.getResult(), 4), 1e-5); assertEquals("Mean/sigma check: Number of difficulties (including steps) ", 24, difficultyMeanX.getN(), 1e-3); assertEquals("Mean/sigma check: Number of difficulties (including steps) ", 24, difficultySdX.getN(), 1e-3); }
From source file:ro.hasna.ts.math.normalization.ZNormalizer.java
public ZNormalizer() { this(new Mean(), new StandardDeviation(false)); }