Code Monkey home page Code Monkey logo

Comments (3)

tuannguyen8390 avatar tuannguyen8390 commented on July 23, 2024

Hi there,

I ran into the same issue with my ONT data. Does this issue resolve yet?

For my case I could see a few indel vcfs in the intermediate_indel_files but the all files are empty.
image

Tuan

from nanocaller.

tuannguyen8390 avatar tuannguyen8390 commented on July 23, 2024

I think I find the reason behind this, cross-ref with issue #1 (already closed)

The default NanoCaller workflow, which is the mode 'both', goes like this:

bam file > SNP calling by NanoCaller > SNP phasing by whatshap > Reads phasing by whatshap > Indel calling by NanoCaller on reads phased in previous step > Combine indel and SNP calls

If you choose 'indel' mode, then we do not have any SNPs that we can use to phase the reads in order to call indels. This option is allowed so that if a user prefers to use a different tool than whatshap to carry out SNPs and reads phasing, or if they already have phased reads that they believe are phased using some other reliable method, then they can bypass the whatshap subroutine by NanoCaller and supply their own phased bam file.

Another reason for this option is that if a user runs NanoCaller in 'both' mode, but the program crashes during indel calling stage for some likely scenarios such as memory exceeding system limits, then they can resume NanoCaller at the indel calling stage, instead of having to do the entire SNP calling and phasing all over again.

We have removed the option for bed files for now. We found for whole genome variant calling that using a bed file would get rid of potential variants near the boundaries of the interval in a bed file. So we found it better to leave it up to a user to filter variants with a bed file using a more sophisticated tool like rtg vcffilter. But I can see having an option like bed file can be useful if you you dont want to spend extra time in calling variants that are outside the intervals in a bed file, and submitting individual calls for each line in a bed file can be cumbersome. We will revisit this issue in our team. Do you have any preferences or thoughts about this?

We provide an example here: https://github.com/WGLab/NanoCaller/tree/master/sample You can see the command we used in the file: https://github.com/WGLab/NanoCaller/blob/master/sample/sample_call

from nanocaller.

umahsn avatar umahsn commented on July 23, 2024

Hi,

Regarding --bed, we changed how we used the bed file. Previously we were using it to filter out candidate sites after we generate a set of candidate sites from whole genome. But now it is meant to be used as a way to specify regions in which candidate sites are going to be generated and then we open the BAM file for each bed file entry. So if there are too many lines in the BED file then it will slow down NanoCaller significantly.

Whereas for indel calling failure, it might help to see if there are any phased SNP files created so we can narrow down where the failure happens. It seems like there is a problem with generating phased BAM file from whatshap.

Tuan, can you show me the error you received? Are you able to get phased SNP files? You can get more error details by replacing this line:
https://github.com/WGLab/NanoCaller/blob/master/nanocaller_src/indelCaller.py#L178

by

run_cmd("whatshap haplotag --ignore-read-groups --ignore-linked-read --reference %s %s %s --regions %s:%d-%d --tag-supplementary -o - | samtools view -b -1 --write-index -o %s" %(params['fasta_path'], output_contig_vcf, params['sam_path'], contig, start, end, phased_bam), verbose=True, output=True, error=True)

from nanocaller.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.