List of usage examples for org.apache.commons.math.stat.descriptive.moment StandardDeviation StandardDeviation
public StandardDeviation()
From source file:com.test.zmisc.App.java
public static void main(String[] args) { double[] a = new double[32768]; double[] b = new double[32768]; ThreadLocalRandom rand = ThreadLocalRandom.current(); for (int i = 0; i < a.length; i++) { a[i] = rand.nextDouble();//from ww w . j a v a 2s . co m b[i] = a[i]; } long ts = System.currentTimeMillis(); PearsonsCorrelation corr = new PearsonsCorrelation(); corr.correlation(a, b); ts = System.currentTimeMillis() - ts; System.out.println("Time elapsed:" + ts + "ms"); // standard deviation is the sqrt(mean((X-avg)^2)) ts = System.currentTimeMillis(); double amean = average(a); double aStdDev = standardDeviation(a, amean); StandardDeviation sd = new StandardDeviation(); sd.setBiasCorrected(false); double bmean = average(b); double bStdDev = standardDeviation(b, bmean); double cor = (covariance(a, aStdDev, b, bmean)) / (aStdDev * bStdDev); ts = System.currentTimeMillis() - ts; System.out.println("Time elapsed:" + ts + "ms"); }
From source file:com.discursive.jccook.math.StatExample.java
public static void main(String[] args) { double[] values = new double[] { 2.3, 5.4, 6.2, 7.3, 23.3 }; System.out.println("min: " + StatUtils.min(values)); System.out.println("max: " + StatUtils.max(values)); System.out.println("mean: " + StatUtils.mean(values)); System.out.println("product: " + StatUtils.product(values)); System.out.println("sum: " + StatUtils.sum(values)); System.out.println("variance: " + StatUtils.variance(values)); // Measures from previous example Min min = new Min(); System.out.println("min: " + min.evaluate(values)); Max max = new Max(); System.out.println("max: " + max.evaluate(values)); Mean mean = new Mean(); System.out.println("mean: " + mean.evaluate(values)); Product product = new Product(); System.out.println("product: " + product.evaluate(values)); Sum sum = new Sum(); System.out.println("sum: " + sum.evaluate(values)); Variance variance = new Variance(); System.out.println("variance: " + variance.evaluate(values)); // New measures Percentile percentile = new Percentile(); System.out.println("80 percentile value: " + percentile.evaluate(values, 80.0)); GeometricMean geoMean = new GeometricMean(); System.out.println("geometric mean: " + geoMean.evaluate(values)); StandardDeviation stdDev = new StandardDeviation(); System.out.println("standard dev: " + stdDev.evaluate(values)); Skewness skewness = new Skewness(); System.out.println("skewness: " + skewness.evaluate(values)); Kurtosis kurtosis = new Kurtosis(); System.out.println("kurtosis: " + kurtosis.evaluate(values)); }
From source file:edu.harvard.med.screensaver.analysis.ZScoreFunction.java
public void initializeAggregates(Collection<Double> valuesToNormalizeOverController) { ResizableDoubleArray tmpDoubleValues = new ResizableDoubleArray(); for (Double value : valuesToNormalizeOverController) { tmpDoubleValues.addElement(value); }//w w w . j a v a2 s.co m _stdDev = new StandardDeviation().evaluate(tmpDoubleValues.getElements()); _mean = new Mean().evaluate(tmpDoubleValues.getElements()); _initialized = true; }
From source file:ch.ethz.bsse.quasirecomb.informationholder.ModelSelectionBootstrapStorage.java
public SelectionResultBootstrap(Collection<Double> bics) { List<Double> list = new ArrayList<>(bics); double[] bicsTmp = new double[list.size()]; for (int i = 0; i < list.size(); i++) { bicsTmp[i] = list.get(i);// ww w . j a va 2 s . c o m } this.median = new Median().evaluate(bicsTmp); this.lowerBound = median - new StandardDeviation().evaluate(bicsTmp) * Math.sqrt(1 + 1d / bicsTmp.length); }
From source file:musite.prediction.feature.disorder.DisorderTest.java
@Test public void extractMean() throws IOException { // String xml = "testData/musite-test.xml"; String xml = "data/Uniprot/uniprot_sprot.201009.ptm.musite.with.disorder.xml"; ProteinsXMLReader reader = DisorderUtil.getDisorderXMLReader(); Proteins proteins = MusiteIOUtil.read(reader, xml); TTest ttest = new TTestImpl(); StandardDeviation std = new StandardDeviation(); Map<AminoAcid, double[]> mapAAScores = new EnumMap<AminoAcid, double[]>(AminoAcid.class); for (AminoAcid aa : AminoAcid.values()) { List<Double> scores = new ArrayList<Double>(); Iterator<Protein> it = proteins.proteinIterator(); while (it.hasNext()) { Protein protein = it.next(); List<Double> dis = DisorderUtil.extractDisorder(protein, aa); if (dis != null) scores.addAll(dis);//from w w w.j a v a2 s . co m } mapAAScores.put(aa, list2array(scores)); // System.out.print(aa.toString()+":"); // System.out.println(""+average(scores)+"("+scores.size()+")"); } Map<String, AminoAcid> mapKeyAA = getMapKeywordAminoAcid(); for (PTM ptm : PTM.values()) { Set<String> keywords = ptm.getUniprotKeywords(); for (String keyword : keywords) { AnnotationFilter filter = ResidueAnnotationUtil.createAnnotationFilter("keyword", Collections.singleton(keyword), true); double[] scores; { List<Double> list = new ArrayList<Double>(); Iterator<Protein> it = proteins.proteinIterator(); while (it.hasNext()) { Protein protein = it.next(); List<Double> dis = DisorderUtil.extractDisorder(protein, ptm, filter); if (dis != null) list.addAll(dis); } scores = list2array(list); } System.out.print(ptm.toString()); System.out.print("\t" + keyword); if (scores.length == 0) System.out.println("\tno_site"); else { System.out.print("\t" + scores.length); double mean = StatUtils.mean(scores); System.out.print("\t" + mean); System.out.print("\t" + std.evaluate(scores, mean)); AminoAcid aa = mapKeyAA.get(keyword); double[] bg = mapAAScores.get(aa); System.out.print("\t" + aa.toString()); System.out.print("\t" + bg.length); mean = StatUtils.mean(bg); System.out.print("\t" + mean); System.out.print("\t" + std.evaluate(bg, mean)); double pvalue = -1.0; try { pvalue = ttest.tTest(scores, bg); } catch (Exception e) { // e.printStackTrace(); } if (pvalue != -1.0) System.out.print("\t" + pvalue); System.out.println(); } } } }
From source file:ch.ethz.bsse.quasirecomb.model.hmm.EM.java
private void blackbox(Read[] reads, int N, int L, int K, int n) { Globals.getINSTANCE().setLOG(new StringBuilder()); Globals.getINSTANCE().setMAX_LLH(-1); Globals.getINSTANCE().setMIN_BIC(Double.MAX_VALUE); String pathOptimum = null;//from www . j a v a2s . co m if (K == 1 || Globals.getINSTANCE().isFORCE_NO_RECOMB()) { Globals.getINSTANCE().setNO_RECOMB(true); } else { Globals.getINSTANCE().setNO_RECOMB(false); } if (Globals.getINSTANCE().getOPTIMUM() == null) { double maxLLH = Double.NEGATIVE_INFINITY; bics = new Double[Globals.getINSTANCE().getREPEATS()]; double[] bics_local = new double[Globals.getINSTANCE().getREPEATS()]; for (int i = 0; i < Globals.getINSTANCE().getREPEATS(); i++) { SingleEM sem = new SingleEM(N, K, L, n, reads, Globals.getINSTANCE().getDELTA_LLH(), i); bics_local[i] = sem.getOptimalResult().getBIC(); bics[i] = sem.getOptimalResult().getBIC(); this.maxBIC = Math.max(this.maxBIC, sem.getOptimalResult().getBIC()); if (sem.getLoglikelihood() > maxLLH) { maxLLH = sem.getLoglikelihood(); pathOptimum = sem.getOptimumPath(); } } medianBIC = new Median().evaluate(bics_local); lowerBoundBIC = medianBIC - new StandardDeviation().evaluate(bics_local) * Math.sqrt(1 + 1d / bics_local.length); } else { pathOptimum = Globals.getINSTANCE().getOPTIMUM(); } if (Globals.getINSTANCE().isMODELSELECTION()) { try { FileInputStream fis = new FileInputStream(pathOptimum); try (ObjectInputStream in = new ObjectInputStream(fis)) { or = (OptimalResult) in.readObject(); } } catch (IOException | ClassNotFoundException ex) { System.err.println(ex); } StatusUpdate.getINSTANCE().printBIC(K, (int) or.getBIC()); } else { try { FileInputStream fis = new FileInputStream(pathOptimum); try (ObjectInputStream in = new ObjectInputStream(fis)) { or = (OptimalResult) in.readObject(); } } catch (IOException | ClassNotFoundException ex) { System.err.println(ex); } StatusUpdate.getINSTANCE().printBIC(K, (int) or.getBIC()); System.out.print("\n"); if (!Globals.getINSTANCE().isSUBSAMPLE()) { // Globals.getINSTANCE().setREFINEMENT(true); if (!Globals.getINSTANCE().isANNEALING()) { SingleEM bestEM = new SingleEM(or, Globals.getINSTANCE().getDELTA_REFINE_LLH(), reads); this.or = bestEM.getOptimalResult(); } StatusUpdate.getINSTANCE().printBIC(K, 100, (int) this.or.getBIC()); if (Globals.getINSTANCE().isLOGGING()) { Utils.saveFile(Globals.getINSTANCE().getSAVEPATH() + "support" + File.separator + "log_K" + K, Globals.getINSTANCE().getLOG().toString()); } } } }
From source file:jsprit.core.algorithm.acceptor.SchrimpfInitialThresholdGenerator.java
@Override public void informAlgorithmStarts(VehicleRoutingProblem problem, VehicleRoutingAlgorithm algorithm, Collection<VehicleRoutingProblemSolution> solutions) { logger.info("prepare schrimpfAcceptanceFunction, i.e. determine initial threshold"); double now = System.currentTimeMillis(); /*//from ww w.j a v a2 s . c om * randomWalk to determine standardDev */ final double[] results = new double[nOfRandomWalks]; URL resource = Resource.getAsURL("randomWalk.xml"); AlgorithmConfig algorithmConfig = new AlgorithmConfig(); new AlgorithmConfigXmlReader(algorithmConfig).read(resource); VehicleRoutingAlgorithm vra = VehicleRoutingAlgorithms.createAlgorithm(problem, algorithmConfig); vra.setMaxIterations(nOfRandomWalks); vra.getAlgorithmListeners().addListener(new IterationEndsListener() { @Override public void informIterationEnds(int iteration, VehicleRoutingProblem problem, Collection<VehicleRoutingProblemSolution> solutions) { double result = Solutions.bestOf(solutions).getCost(); // logger.info("result={}", result); results[iteration - 1] = result; } }); vra.searchSolutions(); StandardDeviation dev = new StandardDeviation(); double standardDeviation = dev.evaluate(results); double initialThreshold = standardDeviation / 2; schrimpfAcceptance.setInitialThreshold(initialThreshold); logger.info("took {} seconds", ((System.currentTimeMillis() - now) / 1000.0)); logger.debug("initial threshold: {}", initialThreshold); logger.info("---------------------------------------------------------------------"); }
From source file:net.sf.jdmf.util.MathCalculator.java
/** * Calculates the standard deviation of all attribute values. * /*w w w . ja va 2s . c om*/ * @param attributeValues attribute values * @return the standard deviation */ public Double calculateStandardDeviation(Comparable[] attributeValues, Double mean) { StandardDeviation standardDeviation = new StandardDeviation(); Double evaluatedStdDev = standardDeviation.evaluate(convertToPrimitives(attributeValues), mean); log.debug("standardDeviation( " + mean + " ) = " + evaluatedStdDev); return evaluatedStdDev; }
From source file:com.foundationdb.server.store.statistics.histograms.BucketSampler.java
BucketSampler(int maxSize, long estimatedInputs, boolean calculateStandardDeviation) { if (maxSize < 1) throw new IllegalArgumentException("max must be at least 1"); if (estimatedInputs < 0) throw new IllegalArgumentException("estimatedInputs must be non-negative: " + estimatedInputs); this.maxSize = maxSize; this.estimatedInputs = estimatedInputs; this.buckets = new ArrayList<>(maxSize + 1); this.stdDev = calculateStandardDeviation ? new StandardDeviation() : null; computeMedianPointBoundaries(maxSize); }
From source file:com.linkedin.pinot.transport.common.routing.RandomRoutingTableTest.java
@Test public void testHelixExternalViewBasedRoutingTable() throws Exception { String tableName = "testTable_OFFLINE"; String fileName = RandomRoutingTableTest.class.getClassLoader().getResource("SampleExternalView.json") .getFile();/*from w w w . jav a 2 s .co m*/ System.out.println(fileName); InputStream evInputStream = new FileInputStream(fileName); ZNRecordSerializer znRecordSerializer = new ZNRecordSerializer(); ZNRecord externalViewRecord = (ZNRecord) znRecordSerializer.deserialize(IOUtils.toByteArray(evInputStream)); int totalRuns = 10000; RoutingTableBuilder routingStrategy = new BalancedRandomRoutingTableBuilder(10); HelixExternalViewBasedRouting routingTable = new HelixExternalViewBasedRouting(null, null); Field offlineRTBField = HelixExternalViewBasedRouting.class.getDeclaredField("_offlineRoutingTableBuilder"); offlineRTBField.setAccessible(true); offlineRTBField.set(routingTable, routingStrategy); ExternalView externalView = new ExternalView(externalViewRecord); routingTable.markDataResourceOnline(tableName, externalView, getInstanceConfigs(externalView)); double[] globalArrays = new double[9]; for (int numRun = 0; numRun < totalRuns; ++numRun) { RoutingTableLookupRequest request = new RoutingTableLookupRequest(tableName); Map<ServerInstance, SegmentIdSet> serversMap = routingTable.findServers(request); TreeSet<ServerInstance> serverInstances = new TreeSet<ServerInstance>(serversMap.keySet()); int i = 0; double[] arrays = new double[9]; for (ServerInstance serverInstance : serverInstances) { globalArrays[i] += serversMap.get(serverInstance).getSegments().size(); arrays[i++] = serversMap.get(serverInstance).getSegments().size(); } for (int j = 0; i < arrays.length; ++j) { Assert.assertTrue(arrays[j] / totalRuns <= 31); Assert.assertTrue(arrays[j] / totalRuns >= 28); } //System.out.println(Arrays.toString(arrays) + " : " + new StandardDeviation().evaluate(arrays) + " : " + new Mean().evaluate(arrays)); } for (int i = 0; i < globalArrays.length; ++i) { Assert.assertTrue(globalArrays[i] / totalRuns <= 31); Assert.assertTrue(globalArrays[i] / totalRuns >= 28); } System.out.println(Arrays.toString(globalArrays) + " : " + new StandardDeviation().evaluate(globalArrays) + " : " + new Mean().evaluate(globalArrays)); }