List of usage examples for java.lang Double NaN
double NaN
To view the source code for java.lang Double NaN.
Click Source Link
From source file:com.itemanalysis.psychometrics.polycor.PolyserialPlugin.java
public double value() { double[] thresholds = null; thresholds = getThresholds();//from w w w .ja v a 2 s .co m double thresholdProbSum = 0.0; for (int i = 0; i < thresholds.length; i++) { thresholdProbSum += norm.density(thresholds[i]); } if (thresholdProbSum == 0.0) return Double.NaN; double n = (double) freqY.getSumFreq(); double psr = Math.sqrt((n - 1.0) / n) * sdY.getResult() * r.value() / thresholdProbSum; return psr; }
From source file:dr.math.distributions.NegativeBinomialDistribution.java
public double quantile(double y) { // TB - I'm having trouble implementing this // LM - A first stab using simple minimisation to invert the function (under absolute loss) // Implementation based on the qnbinom.c function used in R final double stdev = Math.sqrt(mean + (mean * mean * alpha)); final double r = -1 * (mean * mean) / (mean - stdev * stdev); final double p = mean / (stdev * stdev); final double prob = y; final double Q = 1.0 / p; final double P = (1.0 - p) * Q; final double gamma = (Q + P) / stdev; final double z = Math.sqrt(2.0) * ErrorFunction.inverseErf(2.0 * y - 1.0); final double crudeY = mean + stdev * (z + gamma * (z * z - 1) / 6); UnivariateFunction f = new UnivariateFunction() { double tent = Double.NaN; public double evaluate(final double argument) { try { tent = Beta.regularizedBeta(p, r, argument + 1); } catch (MathException e) { return Double.NaN; }//from ww w . ja v a 2s. c o m double score = Math.abs(tent - prob); return score; } public int getNumArguments() { return 1; } public double getLowerBound() { // 20% window should cut it. Probably too large even... return Math.min(crudeY - .2 * crudeY, 0); } public double getUpperBound() { return crudeY + .2 * crudeY; } }; UnivariateMinimum minimum = new UnivariateMinimum(); double q = minimum.findMinimum(f); return Math.ceil(q); }
From source file:eqtlmappingpipeline.util.ModuleEqtlNeutrophilReplication.java
/** * @param args the command line arguments *///from ww w .j a v a 2 s.co m public static void main(String[] args) throws IOException, LdCalculatorException { System.out.println(HEADER); System.out.println(); System.out.flush(); //flush to make sure header is before errors try { Thread.sleep(25); //Allows flush to complete } catch (InterruptedException ex) { } CommandLineParser parser = new PosixParser(); final CommandLine commandLine; try { commandLine = parser.parse(OPTIONS, args, true); } catch (ParseException ex) { System.err.println("Invalid command line arguments: " + ex.getMessage()); System.err.println(); new HelpFormatter().printHelp(" ", OPTIONS); System.exit(1); return; } final String[] genotypesBasePaths = commandLine.getOptionValues("g"); final RandomAccessGenotypeDataReaderFormats genotypeDataType; final String replicationQtlFilePath = commandLine.getOptionValue("e"); final String interactionQtlFilePath = commandLine.getOptionValue("i"); final String outputFilePath = commandLine.getOptionValue("o"); final double ldCutoff = Double.parseDouble(commandLine.getOptionValue("ld")); final int window = Integer.parseInt(commandLine.getOptionValue("w")); System.out.println("Genotype: " + Arrays.toString(genotypesBasePaths)); System.out.println("Interaction file: " + interactionQtlFilePath); System.out.println("Replication file: " + replicationQtlFilePath); System.out.println("Output: " + outputFilePath); System.out.println("LD: " + ldCutoff); System.out.println("Window: " + window); try { if (commandLine.hasOption("G")) { genotypeDataType = RandomAccessGenotypeDataReaderFormats .valueOf(commandLine.getOptionValue("G").toUpperCase()); } else { if (genotypesBasePaths[0].endsWith(".vcf")) { System.err.println( "Only vcf.gz is supported. Please see manual on how to do create a vcf.gz file."); System.exit(1); return; } try { genotypeDataType = RandomAccessGenotypeDataReaderFormats .matchFormatToPath(genotypesBasePaths[0]); } catch (GenotypeDataException e) { System.err .println("Unable to determine input 1 type based on specified path. Please specify -G"); System.exit(1); return; } } } catch (IllegalArgumentException e) { System.err.println("Error parsing --genotypesFormat \"" + commandLine.getOptionValue("G") + "\" is not a valid input data format"); System.exit(1); return; } final RandomAccessGenotypeData genotypeData; try { genotypeData = genotypeDataType.createFilteredGenotypeData(genotypesBasePaths, 100, null, null, null, 0.8); } catch (TabixFileNotFoundException e) { LOGGER.fatal("Tabix file not found for input data at: " + e.getPath() + "\n" + "Please see README on how to create a tabix file"); System.exit(1); return; } catch (IOException e) { LOGGER.fatal("Error reading input data: " + e.getMessage(), e); System.exit(1); return; } catch (IncompatibleMultiPartGenotypeDataException e) { LOGGER.fatal("Error combining the impute genotype data files: " + e.getMessage(), e); System.exit(1); return; } catch (GenotypeDataException e) { LOGGER.fatal("Error reading input data: " + e.getMessage(), e); System.exit(1); return; } ChrPosTreeMap<ArrayList<ReplicationQtl>> replicationQtls = new ChrPosTreeMap<>(); CSVReader replicationQtlReader = new CSVReader(new FileReader(replicationQtlFilePath), '\t'); replicationQtlReader.readNext();//skip header String[] replicationLine; while ((replicationLine = replicationQtlReader.readNext()) != null) { try { GeneticVariant variant = genotypeData.getSnpVariantByPos(replicationLine[REPLICATION_SNP_CHR_COL], Integer.parseInt(replicationLine[REPLICATION_SNP_POS_COL])); if (variant == null) { continue; } ReplicationQtl replicationQtl = new ReplicationQtl(replicationLine[REPLICATION_SNP_CHR_COL], Integer.parseInt(replicationLine[REPLICATION_SNP_POS_COL]), replicationLine[REPLICATION_GENE_COL], Double.parseDouble(replicationLine[REPLICATION_BETA_COL]), variant.getAlternativeAlleles().get(0).getAlleleAsString()); ArrayList<ReplicationQtl> posReplicationQtls = replicationQtls.get(replicationQtl.getChr(), replicationQtl.getPos()); if (posReplicationQtls == null) { posReplicationQtls = new ArrayList<>(); replicationQtls.put(replicationQtl.getChr(), replicationQtl.getPos(), posReplicationQtls); } posReplicationQtls.add(replicationQtl); } catch (Exception e) { System.out.println(Arrays.toString(replicationLine)); throw e; } } int interactionSnpNotInGenotypeData = 0; int noReplicationQtlsInWindow = 0; int noReplicationQtlsInLd = 0; int multipleReplicationQtlsInLd = 0; int replicationTopSnpNotInGenotypeData = 0; final CSVWriter outputWriter = new CSVWriter(new FileWriter(new File(outputFilePath)), '\t', '\0'); final String[] outputLine = new String[14]; int c = 0; outputLine[c++] = "Chr"; outputLine[c++] = "Pos"; outputLine[c++] = "SNP"; outputLine[c++] = "Gene"; outputLine[c++] = "Module"; outputLine[c++] = "DiscoveryZ"; outputLine[c++] = "ReplicationZ"; outputLine[c++] = "DiscoveryZCorrected"; outputLine[c++] = "ReplicationZCorrected"; outputLine[c++] = "DiscoveryAlleleAssessed"; outputLine[c++] = "ReplicationAlleleAssessed"; outputLine[c++] = "bestLd"; outputLine[c++] = "bestLd_dist"; outputLine[c++] = "nextLd"; outputWriter.writeNext(outputLine); HashSet<String> notFound = new HashSet<>(); CSVReader interactionQtlReader = new CSVReader(new FileReader(interactionQtlFilePath), '\t'); interactionQtlReader.readNext();//skip header String[] interactionQtlLine; while ((interactionQtlLine = interactionQtlReader.readNext()) != null) { String snp = interactionQtlLine[1]; String chr = interactionQtlLine[2]; int pos = Integer.parseInt(interactionQtlLine[3]); String gene = interactionQtlLine[4]; String alleleAssessed = interactionQtlLine[9]; String module = interactionQtlLine[12]; double discoveryZ = Double.parseDouble(interactionQtlLine[10]); GeneticVariant interactionQtlVariant = genotypeData.getSnpVariantByPos(chr, pos); if (interactionQtlVariant == null) { System.err.println("Interaction QTL SNP not found in genotype data: " + chr + ":" + pos); ++interactionSnpNotInGenotypeData; continue; } ReplicationQtl bestMatch = null; double bestMatchR2 = Double.NaN; Ld bestMatchLd = null; double nextBestR2 = Double.NaN; ArrayList<ReplicationQtl> sameSnpQtls = replicationQtls.get(chr, pos); if (sameSnpQtls != null) { for (ReplicationQtl sameSnpQtl : sameSnpQtls) { if (sameSnpQtl.getGene().equals(gene)) { bestMatch = sameSnpQtl; bestMatchR2 = 1; } } } NavigableMap<Integer, ArrayList<ReplicationQtl>> potentionalReplicationQtls = replicationQtls .getChrRange(chr, pos - window, true, pos + window, true); for (ArrayList<ReplicationQtl> potentialReplicationQtls : potentionalReplicationQtls.values()) { for (ReplicationQtl potentialReplicationQtl : potentialReplicationQtls) { if (!potentialReplicationQtl.getGene().equals(gene)) { continue; } GeneticVariant potentialReplicationQtlVariant = genotypeData .getSnpVariantByPos(potentialReplicationQtl.getChr(), potentialReplicationQtl.getPos()); if (potentialReplicationQtlVariant == null) { notFound.add(potentialReplicationQtl.getChr() + ":" + potentialReplicationQtl.getPos()); ++replicationTopSnpNotInGenotypeData; continue; } Ld ld = interactionQtlVariant.calculateLd(potentialReplicationQtlVariant); double r2 = ld.getR2(); if (r2 > 1) { r2 = 1; } if (bestMatch == null) { bestMatch = potentialReplicationQtl; bestMatchR2 = r2; bestMatchLd = ld; } else if (r2 > bestMatchR2) { bestMatch = potentialReplicationQtl; nextBestR2 = bestMatchR2; bestMatchR2 = r2; bestMatchLd = ld; } } } double replicationZ = Double.NaN; double replicationZCorrected = Double.NaN; double discoveryZCorrected = Double.NaN; String replicationAlleleAssessed = null; if (bestMatch != null) { replicationZ = bestMatch.getBeta(); replicationAlleleAssessed = bestMatch.getAssessedAllele(); if (pos != bestMatch.getPos()) { String commonHap = null; double commonHapFreq = -1; for (Map.Entry<String, Double> hapFreq : bestMatchLd.getHaplotypesFreq().entrySet()) { double f = hapFreq.getValue(); if (f > commonHapFreq) { commonHapFreq = f; commonHap = hapFreq.getKey(); } } String[] commonHapAlleles = StringUtils.split(commonHap, '/'); discoveryZCorrected = commonHapAlleles[0].equals(alleleAssessed) ? discoveryZ : discoveryZ * -1; replicationZCorrected = commonHapAlleles[1].equals(replicationAlleleAssessed) ? replicationZ : replicationZ * -1; } else { discoveryZCorrected = discoveryZ; replicationZCorrected = alleleAssessed.equals(replicationAlleleAssessed) ? replicationZ : replicationZ * -1; } } c = 0; outputLine[c++] = chr; outputLine[c++] = String.valueOf(pos); outputLine[c++] = snp; outputLine[c++] = gene; outputLine[c++] = module; outputLine[c++] = String.valueOf(discoveryZ); outputLine[c++] = bestMatch == null ? "NA" : String.valueOf(replicationZ); outputLine[c++] = bestMatch == null ? "NA" : String.valueOf(discoveryZCorrected); outputLine[c++] = bestMatch == null ? "NA" : String.valueOf(replicationZCorrected); outputLine[c++] = alleleAssessed; outputLine[c++] = bestMatch == null ? "NA" : String.valueOf(bestMatch.getAssessedAllele()); outputLine[c++] = String.valueOf(bestMatchR2); outputLine[c++] = bestMatch == null ? "NA" : String.valueOf(Math.abs(pos - bestMatch.getPos())); outputLine[c++] = String.valueOf(nextBestR2); outputWriter.writeNext(outputLine); } outputWriter.close(); for (String e : notFound) { System.err.println("Not found: " + e); } System.out.println("interactionSnpNotInGenotypeData: " + interactionSnpNotInGenotypeData); System.out.println("noReplicationQtlsInWindow: " + noReplicationQtlsInWindow); System.out.println("noReplicationQtlsInLd: " + noReplicationQtlsInLd); System.out.println("multipleReplicationQtlsInLd: " + multipleReplicationQtlsInLd); System.out.println("replicationTopSnpNotInGenotypeData: " + replicationTopSnpNotInGenotypeData); }
From source file:at.jku.traces.json.UserTrace.java
@Override public double getStartTime() { sort();/*ww w .jav a2s.c o m*/ if (trace.length > 0) { return trace[0].getTime(); } return Double.NaN; }
From source file:org.jfree.data.xy.AbstractXYDataset.java
/** * Returns the x-value (as a double primitive) for an item within a series. * * @param series the series index (zero-based). * @param item the item index (zero-based). * * @return The value./*from w w w . ja va 2s. co m*/ */ public double getXValue(int series, int item) { double result = Double.NaN; Number x = getX(series, item); if (x != null) { result = x.doubleValue(); } return result; }
From source file:com.fusesource.forge.jmstest.persistence.rrd.Rrd4jSamplePersistenceAdapter.java
private void createRrdDatabase() { File dbFile = new File(getFileName()); log().debug("Creating RRD database: " + dbFile.getAbsolutePath()); RrdDef rrdDef = new RrdDef(dbFile.getAbsolutePath(), getStartTime(), 1); for (ProbeDescriptor pd : getDataSources().keySet()) { log().debug("Adding Data Source to RRD: " + pd + "," + getDataSources().get(pd)); DsType type = null;/* w ww.j a va 2 s. c o m*/ switch (pd.getValueType()) { case COUNTER: type = DsType.COUNTER; break; default: type = DsType.GAUGE; break; } rrdDef.addDatasource(getDataSources().get(pd), type, 1, Double.NaN, Double.NaN); } rrdDef.setStartTime(getStartTime()); rrdDef.addArchive(ConsolFun.AVERAGE, 0.5, 1, getArchiveLength()); try { database = new RrdDb(rrdDef); database.close(); } catch (IOException e) { log().error("Error creating RRD4J storage: ", e); } }
From source file:com.mapr.synth.samplers.GammaSampler.java
@SuppressWarnings("UnusedDeclaration") public void setDof(double dof) { alpha = Double.NaN; beta = Double.NaN;/* ww w . j a v a2 s.c o m*/ this.dof = dof; init(); }
From source file:com.cti.vpx.controls.graph.utilities.ui.graphs.waterfallGraph.ArithmeticMean.java
/** * Create a FirstMoment instance */ public ArithmeticMean() { n = 0; m1 = Double.NaN; dev = Double.NaN; nDev = Double.NaN; }
From source file:net.recommenders.rival.evaluation.statistics.EffectSize.java
/** * Computes the effect size according to different methods: d and dLS are * adequate for not paired samples, whereas pairedT is better for paired * samples./*from w ww.java2 s . co m*/ * * @param method one of "d", "dLS", "pairedT" * @return the effect size */ public double getEffectSize(final String method) { if ("d".equals(method)) { return getCohenD(baselineMetricPerDimension, testMetricPerDimension, false); } else if ("dLS".equals(method)) { return getCohenD(baselineMetricPerDimension, testMetricPerDimension, true); } else if ("pairedT".equals(method)) { return getEffectSizePairedT(baselineMetricPerDimension, testMetricPerDimension); } return Double.NaN; }
From source file:io.sidecar.notification.NotificationRule.java
public NotificationRule(UUID ruleId, String name, String description, UUID appId, UUID userId, String stream, String key, double min, double max) { this.ruleId = checkNotNull(ruleId); checkArgument(StringUtils.isNotBlank(name) && name.length() <= 100); this.name = name.trim(); checkArgument(StringUtils.isBlank(description) || description.length() <= 140); this.description = (description == null) ? "" : description.trim(); this.appId = checkNotNull(appId); this.userId = checkNotNull(userId); Preconditions.checkArgument(ModelUtils.isValidStreamId(stream)); this.stream = checkNotNull(stream); checkArgument(ModelUtils.isValidReadingKey(key)); this.key = key; this.min = (min == Double.NEGATIVE_INFINITY || min == Double.NaN) ? Double.MIN_VALUE : min; this.max = (max == Double.POSITIVE_INFINITY || max == Double.NaN) ? Double.MAX_VALUE : max; }