本文整理汇总了Java中htsjdk.tribble.readers.TabixReader类的典型用法代码示例。如果您正苦于以下问题:Java TabixReader类的具体用法?Java TabixReader怎么用?Java TabixReader使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
TabixReader类属于htsjdk.tribble.readers包,在下文中一共展示了TabixReader类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: hasTabixIndex
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
/** Return true if fileName has a valid tabix index.
* @throws IOException
* */
public static boolean hasTabixIndex(String fileName) throws IOException{
if((new UrlValidator()).isValid(fileName) && fileName.startsWith("ftp")){
// Because of issue #51
return false;
}
try{
TabixReader tabixReader= new TabixReader(fileName);
tabixReader.readLine();
tabixReader.close();
return true;
} catch (Exception e){
return false;
}
}
开发者ID:dariober,项目名称:ASCIIGenome,代码行数:20,代码来源:Utils.java
示例2: canCompressAndIndexHeaderlessVCF
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
@Test
public void canCompressAndIndexHeaderlessVCF() throws ClassNotFoundException, IOException, InvalidRecordException, SQLException{
String infile= "test_data/noheader.vcf";
File outfile= new File("test_data/noheader.vcf.gz");
outfile.deleteOnExit();
File expectedTbi= new File(outfile.getAbsolutePath() + TabixUtils.STANDARD_INDEX_EXTENSION);
expectedTbi.deleteOnExit();
new MakeTabixIndex(infile, outfile, TabixFormat.VCF);
assertTrue(outfile.exists());
assertTrue(outfile.length() > 200);
assertTrue(expectedTbi.exists());
assertTrue(expectedTbi.length() > 100);
TabixReader tbx = new TabixReader(outfile.getAbsolutePath());
Iterator x = tbx.query("1", 1, 10000000);
assertTrue(x.next().startsWith("1"));
}
开发者ID:dariober,项目名称:ASCIIGenome,代码行数:23,代码来源:MakeTabixFileTest.java
示例3: canCompressAndIndexSortedFile
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
@Test
public void canCompressAndIndexSortedFile() throws IOException, InvalidRecordException, ClassNotFoundException, SQLException {
String infile= "test_data/overlapped.bed";
File outfile= new File("test_data/tmp.bed.gz");
outfile.deleteOnExit();
File expectedTbi= new File(outfile.getAbsolutePath() + TabixUtils.STANDARD_INDEX_EXTENSION);
expectedTbi.deleteOnExit();
new MakeTabixIndex(infile, outfile, TabixFormat.BED);
assertTrue(outfile.exists());
assertTrue(outfile.length() > 80);
assertTrue(expectedTbi.exists());
assertTrue(expectedTbi.length() > 80);
TabixReader tbx = new TabixReader(outfile.getAbsolutePath());
Iterator x = tbx.query("chr1", 1, 1000000);
assertTrue(x.next().startsWith("chr1"));
}
开发者ID:dariober,项目名称:ASCIIGenome,代码行数:23,代码来源:MakeTabixFileTest.java
示例4: canCompressAndIndexSortedGzipFile
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
@Test
public void canCompressAndIndexSortedGzipFile() throws IOException, InvalidRecordException, ClassNotFoundException, SQLException {
String infile= "test_data/hg19_genes.gtf.gz";
File outfile= new File("test_data/tmp2.bed.gz");
outfile.deleteOnExit();
File expectedTbi= new File(outfile.getAbsolutePath() + TabixUtils.STANDARD_INDEX_EXTENSION);
expectedTbi.deleteOnExit();
new MakeTabixIndex(infile, outfile, TabixFormat.GFF);
assertTrue(outfile.exists());
assertTrue(outfile.length() > 7000000);
assertTrue(expectedTbi.exists());
assertTrue(expectedTbi.length() > 500000);
TabixReader tbx = new TabixReader(outfile.getAbsolutePath());
Iterator x = tbx.query("chr1", 1, 1000000);
assertTrue(x.next().startsWith("chr1"));
}
开发者ID:dariober,项目名称:ASCIIGenome,代码行数:23,代码来源:MakeTabixFileTest.java
示例5: canCompressAndIndexVCF
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
@Test
public void canCompressAndIndexVCF() throws ClassNotFoundException, IOException, InvalidRecordException, SQLException{
String infile= "test_data/CHD.exon.2010_03.sites.unsorted.vcf";
File outfile= new File("test_data/tmp6.bed.gz");
outfile.deleteOnExit();
File expectedTbi= new File(outfile.getAbsolutePath() + TabixUtils.STANDARD_INDEX_EXTENSION);
expectedTbi.deleteOnExit();
new MakeTabixIndex(infile, outfile, TabixFormat.VCF);
assertTrue(outfile.exists());
assertTrue(outfile.length() > 1000);
assertTrue(expectedTbi.exists());
assertTrue(expectedTbi.length() > 1000);
TabixReader tbx = new TabixReader(outfile.getAbsolutePath());
Iterator x = tbx.query("1", 20000000, 30000000);
assertTrue(x.next().startsWith("1"));
// Check you can read ok
this.vcfTester(outfile.getAbsolutePath());
}
开发者ID:dariober,项目名称:ASCIIGenome,代码行数:25,代码来源:MakeTabixFileTest.java
示例6: getCaddPathogenicityData
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
private PathogenicityData getCaddPathogenicityData(TabixDataSource tabixDataSource, String chromosome, int start, String ref, String alt) {
try {
TabixReader.Iterator results = tabixDataSource.query(chromosome + ":" + start + "-" + start);
String line;
//there can be 0 - N results in this format:
//#Chrom Pos Ref Alt RawScore PHRED
//2 14962 C CA -0.138930 1.458
//2 14962 C CAA -0.155009 1.356
//2 14962 CA C 0.194173 4.618
while ((line = results.next()) != null) {
String[] elements = line.split("\t");
String caddRef = elements[2];
String caddAlt = elements[3];
if (caddRef.equals(ref) && caddAlt.equals(alt)) {
return makeCaddPathData(elements[5]);
}
}
} catch (IOException e) {
logger.error("Unable to read from CADD tabix file {}", tabixDataSource.getSource(), e);
}
return PathogenicityData.empty();
}
开发者ID:exomiser,项目名称:Exomiser,代码行数:23,代码来源:CaddDao.java
示例7: getRemmData
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
private PathogenicityData getRemmData(String chromosome, int start, int end) {
try {
float remm = Float.NaN;
String line;
// logger.info("Running tabix with " + chromosome + ":" + start + "-" + end);
TabixReader.Iterator results = remmTabixDataSource.query(chromosome + ":" + start + "-" + end);
while ((line = results.next()) != null) {
String[] elements = line.split("\t");
if (Float.isNaN(remm)) {
remm = Float.parseFloat(elements[2]);
} else {
remm = Math.max(remm, Float.parseFloat(elements[2]));
}
}
//logger.info("Final score " + remm);
if (!Float.isNaN(remm)) {
return PathogenicityData.of(RemmScore.valueOf(remm));
}
} catch (IOException e) {
logger.error("Unable to read from REMM tabix file {}", remmTabixDataSource.getSource(), e);
}
return PathogenicityData.empty();
}
开发者ID:exomiser,项目名称:Exomiser,代码行数:24,代码来源:RemmDao.java
示例8: getPositionFrequencyData
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
private FrequencyData getPositionFrequencyData(String chromosome, int start, String ref, String alt) {
//Local frequency file defined as tab-delimited lines in 'VCF-lite' format:
//chr pos ref alt freq(%)
//1 12345 A T 23.0 (an A->T SNP on chr1 at position 12345 with frequency of 23.0%)
//1 12345 A TG 0.01 (an A->TG insertion on chr1 at position 12345 with frequency of 0.01%)
//note in the usual VCF format these would be on a single line
//1 12345 AT G 0.02 (an AT->G deletion on chr1 at position 12345 with frequency of 0.02%)
//1 12345 T . 0.03 (an T->. monomorphic site (no alt allele) on chr1 at position 12345 with frequency of 0.03%)
try {
TabixReader.Iterator results = tabixDataSource.query(chromosome + ":" + start + "-" + start);
String line;
while ((line = results.next()) != null) {
String[] elements = line.split("\t");
String refField = elements[2];
String altField = elements[3];
if (refField.equals(ref) && altField.equals(alt)) {
return parseLocalFrequency(elements[4]);
}
}
} catch (IOException e) {
logger.error("Unable to read from local frequency tabix file {}", tabixDataSource.getSource(), e);
}
return FrequencyData.empty();
}
开发者ID:exomiser,项目名称:Exomiser,代码行数:25,代码来源:LocalFrequencyDao.java
示例9: TabixDataSource
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
public TabixDataSource(DataUrl repeat, DataUrl repeatIndex) throws URISyntaxException, IOException {
//TODO use the provided index instead of guessing
super(repeat);
URL repeatUrl = repeat.getUrl();
String fileString = null;
if ("http".equals(repeatUrl.getProtocol())) {
fileString = repeatUrl.toExternalForm();
} else {
fileString = (new File(repeatUrl.toURI()).getPath()); //Translate '%20' to space character, required in Windows
}
this.reader = new TabixReader(fileString);
// TODO initialize chromosome name unnormaliser (see for example BamDataSource),
}
开发者ID:chipster,项目名称:chipster,代码行数:19,代码来源:TabixDataSource.java
示例10: TrackBookmark
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
public TrackBookmark(GenomicCoords gc, String nameForBookmark) throws IOException, ClassNotFoundException, InvalidRecordException, SQLException, InvalidGenomicCoordsException{
super(gc);
this.setTrackTag(trackName);
// Prepare bookmark file
// =====================
// First write out the current position as plain text. Then gzip and index.
File bookmarkPlain= Utils.createTempFile(".asciigenome.bookmarks.", ".gff");
bookmarkPlain.deleteOnExit();
BufferedWriter wr = new BufferedWriter(new FileWriter(bookmarkPlain));
wr.write(this.positionToGffLine(gc, nameForBookmark) + "\n"); // gc.getChrom() + "\t" + (gc.getFrom() - 1) + "\t" + gc.getTo() + "\t" + nameForBookmark + "\n");
wr.close();
File bookmark= new File(bookmarkPlain + ".gz");
bookmark.deleteOnExit();
(new File(bookmark.getAbsolutePath() + ".tbi")).deleteOnExit();
this.setFilename(bookmark.getAbsolutePath());
this.setWorkFilename(bookmark.getAbsolutePath());
new MakeTabixIndex(bookmarkPlain.getAbsolutePath(), bookmark, TabixFormat.GFF);
bookmarkPlain.delete();
this.setTabixReader(new TabixReader(bookmark.getAbsolutePath()));
this.setTrackFormat(TrackFormat.GTF);
this.setGc(gc);
}
开发者ID:dariober,项目名称:ASCIIGenome,代码行数:28,代码来源:TrackBookmark.java
示例11: addBookmark
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
/** Add current genomic position to track.
* @throws IOException
* @throws SQLException
* @throws InvalidRecordException
* @throws ClassNotFoundException
* @throws InvalidGenomicCoordsException
* */
@Override
public void addBookmark(GenomicCoords gc, String nameForBookmark) throws IOException, ClassNotFoundException, InvalidRecordException, SQLException, InvalidGenomicCoordsException{
// Adding a bookmark means re-preparing the bgzip file again.
// First write the current position to a new tmp file, then append to this file
// all the bookmarks previously added. Then bgzip and compress replacing the old bookmark file.
File plainNew= new File(this.getWorkFilename() + ".add");
plainNew.deleteOnExit();
BufferedWriter wr = new BufferedWriter(new FileWriter(plainNew));
InputStream fileStream = new FileInputStream(this.getWorkFilename());
Reader decoder = new InputStreamReader(new GZIPInputStream(fileStream), "UTF-8");
BufferedReader br= new BufferedReader(decoder);
String line;
while( (line = br.readLine()) != null) {
if(line.contains("\t__ignore_me__")){ // Hack to circumvent issue #38
continue;
}
wr.write(line + "\n");
}
// Add new bookamrk
wr.write(this.positionToGffLine(gc, nameForBookmark) + "\n");
br.close();
wr.close();
// Recompress and index replacing the original bgzip file
new MakeTabixIndex(plainNew.getAbsolutePath(), new File(this.getWorkFilename()), TabixFormat.GFF);
plainNew.delete();
this.tabixReader= new TabixReader(this.getWorkFilename());
// Update track.
this.update();
}
开发者ID:dariober,项目名称:ASCIIGenome,代码行数:42,代码来源:TrackBookmark.java
示例12: removeBookmark
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
/** Remove the bookmark matching the exact coordinates of the current position.
* Bookmarks partially overlapping are not removed.
* @param bookmarkRegion
* @throws IOException
* @throws SQLException
* @throws InvalidRecordException
* @throws ClassNotFoundException
* @throws InvalidGenomicCoordsException
* */
public void removeBookmark(GenomicCoords bookmarkRegion) throws IOException, ClassNotFoundException, InvalidRecordException, SQLException, InvalidGenomicCoordsException {
// To remove a bookmark, iterate through the bgzip file writing records to a tmp file.
// The record(s) matching this position is not written.
//
File plainNew= new File(this.getWorkFilename() + ".remove");
plainNew.deleteOnExit();
BufferedWriter wr = new BufferedWriter(new FileWriter(plainNew));
InputStream fileStream = new FileInputStream(this.getWorkFilename());
Reader decoder = new InputStreamReader(new GZIPInputStream(fileStream), "UTF-8");
BufferedReader br= new BufferedReader(decoder);
String line;
while( (line = br.readLine()) != null) {
if( ! line.startsWith("#")){ // In case of comment lines
List<String>pos= Lists.newArrayList(Splitter.on("\t").split(line));
if(bookmarkRegion.getChrom().equals(pos.get(0)) &&
bookmarkRegion.getFrom() == Integer.parseInt(pos.get(3)) &&
bookmarkRegion.getTo() == Integer.parseInt(pos.get(4))){
continue;
}
}
wr.write(line + "\n");
}
wr.close();
br.close();
// Recompress and index replacing the original bgzip file
new MakeTabixIndex(plainNew.getAbsolutePath(), new File(this.getWorkFilename()), TabixFormat.GFF);
plainNew.delete();
this.tabixReader= new TabixReader(this.getWorkFilename());
// Update track.
this.update();
}
开发者ID:dariober,项目名称:ASCIIGenome,代码行数:46,代码来源:TrackBookmark.java
示例13: TrackIntervalFeature
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
public TrackIntervalFeature(final String filename, GenomicCoords gc) throws IOException, InvalidGenomicCoordsException, ClassNotFoundException, InvalidRecordException, SQLException{
this.setFilename(filename);
if(Utils.getFileTypeFromName(filename).equals(TrackFormat.BIGBED)){
this.bigBedReader = new BBFileReader(filename); // or url for remote access.
if(!this.bigBedReader.getBBFileHeader().isBigBed()){
throw new RuntimeException("File " + filename + " is not bigBed.");
}
this.setWorkFilename(filename);
this.setTrackFormat(TrackFormat.BIGBED);
} else if( ! Utils.hasTabixIndex(filename)){
// Tabix index not found for this file. Sort and index input to tmp.
String suffix= new File(filename).getName();
if( ! suffix.endsWith(".gz")){
suffix += ".gz";
}
String tmpWorkFile= Utils.createTempFile(".asciigenome.", "." + suffix).getAbsolutePath();
new File(tmpWorkFile).deleteOnExit();
new File(new File(tmpWorkFile).getAbsolutePath() + ".tbi").deleteOnExit();
this.setWorkFilename(tmpWorkFile);
this.setTrackFormat(Utils.getFileTypeFromName(new File(filename).getName()));
new MakeTabixIndex(filename, new File( this.getWorkFilename() ), Utils.trackFormatToTabixFormat(this.getTrackFormat()));
this.setWorkFilename(tmpWorkFile);
this.tabixReader= new TabixReader(new File(this.getWorkFilename()).getAbsolutePath());
} else { // This means the input is tabix indexed.
this.setWorkFilename(filename);
this.setTrackFormat(Utils.getFileTypeFromName(new File(filename).getName()));
this.tabixReader= new TabixReader(this.getWorkFilename());
}
this.setGc(gc);
}
开发者ID:dariober,项目名称:ASCIIGenome,代码行数:40,代码来源:TrackIntervalFeature.java
示例14: processDataRequest
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
@Override
protected void processDataRequest(DataRequest request) throws InterruptedException {
// Read the given region
TabixReader.Iterator iterator = dataSource.getTabixIterator(request);
try {
String line;
List<Feature> resultList = new LinkedList<Feature>();
if (iterator != null) { //null if there isn't such chromosome in annotations
while ((line = iterator.next()) != null) {
parser.setLine(line);
Region region = parser.getRegion();
resultList.add(new Feature(region));
}
}
// Send result
super.createDataResult(new DataResult(request.getStatus(), resultList));
} catch (IOException e) {
e.printStackTrace();
}
}
开发者ID:chipster,项目名称:chipster,代码行数:28,代码来源:BedTabixToRegionConversion.java
示例15: closeIfPossible
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
public static void closeIfPossible(TabixReader reader) {
if (reader != null) {
try {
reader.close();
} catch (Exception e) {
// Ignore
}
}
}
开发者ID:chipster,项目名称:chipster,代码行数:10,代码来源:SamBamUtils.java
示例16: GenericTSVVariantContextProvider
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
public GenericTSVVariantContextProvider(GenericTSVAnnotationOptions options) {
this.options = options;
final String tsvPath = this.options.getTsvFile().toString();
try {
this.tabixReader = new TabixReader(tsvPath, tsvPath + ".tbi");
} catch (IOException e) {
throw new RuntimeException("Could not open TABIX file " + tsvPath, e);
}
}
开发者ID:charite,项目名称:jannovar,代码行数:10,代码来源:GenericTSVVariantContextProvider.java
示例17: iterator
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
private Iterator<String> iterator(int parseReg[])
{
if(isClosed()) return Collections.emptyIterator();
if(parseReg==null)
{
return Collections.emptyIterator();
}
final TabixReader.Iterator titer=this.tabix.query(parseReg[0], parseReg[1],parseReg[2]);
if(titer==null)
{
return Collections.emptyIterator();
}
return new MyIterator(titer);
}
开发者ID:lindenb,项目名称:jvarkit,代码行数:15,代码来源:TabixFileReader.java
示例18: DBBean
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
public DBBean(final DBRunConfigBean config, final Printter printter) throws IOException {
super();
this.tabixReader = new TabixReader(config.getDbPath(), config.getDbIndex());
this.printter = printter;
this.index = new TbiIndex(config.getDbIndex());
}
开发者ID:mulinlab,项目名称:vanno,代码行数:7,代码来源:DBBean.java
示例19: getTabixReader
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
public TabixReader getTabixReader() {
return tabixReader;
}
开发者ID:mulinlab,项目名称:vanno,代码行数:4,代码来源:DBBean.java
示例20: changeRef
import htsjdk.tribble.readers.TabixReader; //导入依赖的package包/类
public void changeRef(String dir) {
writeToConfig("DefaultGenome=" +dir);
defaultGenome = dir;
setChromDrop(Main.refDropdown.getSelectedItem().toString());
getBands();
try {
if(genomehash.get(dir).size() > 0) {
ChromDraw.exonReader = new TabixReader(genomehash.get(dir).get(0).getCanonicalPath());
String s;
String[] exonSplit;
searchTable.clear();
while((s = ChromDraw.exonReader.readLine()) != null) {
exonSplit = s.split("\t");
if(!searchTable.containsKey(exonSplit[3].toUpperCase())) {
String[] adder = {exonSplit[0], exonSplit[1], exonSplit[2]};
searchTable.put(exonSplit[3].toUpperCase(), adder);
if(exonSplit[6].contains(":")) {
geneIDMap.put(exonSplit[6].split(":")[1].toUpperCase(), exonSplit[3].toUpperCase());
}
else {
geneIDMap.put(exonSplit[6].toUpperCase(), exonSplit[3].toUpperCase());
}
}
else {
if(Integer.parseInt(searchTable.get(exonSplit[3].toUpperCase())[1]) > Integer.parseInt(exonSplit[1])) {
searchTable.get(exonSplit[3].toUpperCase())[1] = exonSplit[1];
}
if(Integer.parseInt(searchTable.get(exonSplit[3].toUpperCase())[2]) < Integer.parseInt(exonSplit[2])) {
searchTable.get(exonSplit[3].toUpperCase())[2] = exonSplit[2];
}
}
}
}
}
catch(Exception e) {
e.printStackTrace();
}
changeAnnotation(0);
chromosomeDropdown.setSelectedIndex(0);
drawCanvas.chrom = chromosomeDropdown.getItemAt(0);
}
开发者ID:rkataine,项目名称:BasePlayer,代码行数:46,代码来源:Main.java
注:本文中的htsjdk.tribble.readers.TabixReader类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论