/** * Gets the samples that the gene is either mutated or intact. In both cases it is expressed, and * not copy number lost. */ private boolean[] selectSubset(String symbol, boolean mutated) { AlterationPack alts = portalAcc.getAlterations(symbol); Change[] muts = alts.get(Alteration.MUTATION); Change[] cncs = alts.get(Alteration.COPY_NUMBER); Change[] expz = alts.get(Alteration.EXPRESSION); boolean[] x = new boolean[alts.getSize()]; for (int i = 0; i < x.length; i++) { if (ADD_CN_TO_MUT) { x[i] = (mutated ? muts[i].isAltered() || cncs[i].isAltered() : muts[i] == Change.NO_CHANGE) && cncs[i] == Change.NO_CHANGE && expz[i] != Change.INHIBITING && !expz[i].isAbsent(); } else { x[i] = (mutated ? muts[i].isAltered() : muts[i] == Change.NO_CHANGE) && cncs[i] != Change.INHIBITING && expz[i] != Change.INHIBITING && !cncs[i].isAbsent() && !expz[i].isAbsent(); } } return x; }
private boolean[] getMutated(Set<String> genes) { boolean[] b = new boolean[portalAcc.getAlterations(genes.iterator().next()).getSize()]; for (String gene : genes) { AlterationPack alts = portalAcc.getAlterations(gene); Change[] ch = alts.get(Alteration.MUTATION); for (int i = 0; i < ch.length; i++) { if (ch[i].isAltered()) b[i] = true; } } return b; }
private boolean[] getCopyNumberUnchanged(String symbol) { AlterationPack alts = portalAcc.getAlterations(symbol); if (alts == null) return null; Change[] cnc = alts.get(Alteration.COPY_NUMBER); if (cnc == null) return null; boolean[] b = new boolean[cnc.length]; for (int i = 0; i < b.length; i++) { b[i] = !USE_COPY_NUMBER_UNCHANGED || !cnc[i].isAltered() && !cnc[i].isAbsent(); } return b; }