Repository navigation
FAQ
Any data that is expressed in a properly formatted VCF should work, regardless of genome or build.
Frankly, because we only use VEP. If there is significant demand for SNPeff annotations to be supported as well, this functionality could be added, as GEMINI has a template framework which could be adapted. This would likely require spinning the variant impact paring off into its own set of functions though, which would add an additional layer of complexity to the pipeline.
The short answer to this is that VCFbdR introduces no new functions, so a package just doesn't make sense. In fact, though we have released these pipeline scripts, we hope that users recognize VCFdb as a conceptual framework more than a specific tool or software. There are any number of ways the end-result SQLite database could be created, this is one way we found that was relatively easy to understand.
Even as a pipeline, VCFdbR does violate some best practices. This was generally done to help make the processing easier to follow for users who are familiar with R, but not data processing pipeline. It is also in recognition that different users have different needs that we couldn't hope to anticipate, and we want you to tweak or adapt this code as much as needed to fit your needs. We have found that once users begin to appreciate the utility of SQL databases (of any flavor), they quickly recognize additional applications for other projects.
If you have lots of samples in your VCF, this is likely a result of VariantAnnotation getting bogged down trying to read in the position data. One solution is to use bcftools to remove all INFO and FORMAT fields and then run this subset VCF through the first step of the pipeline and the full VCF through the second step, like so:
$ bcftools annotate -x ID,INFO,FORMAT -O z -o file-position.vcf.gz file.vcf.gz
$ tabix file-position.vcf.gz
$ Rscript ~/VCFdbR/pipeline/01-generate-variant-ranges-index.R --prefix file --vcf file-position.vcf.gz
$ Rscript ~/VCFdbR/pipeline/02-build-db.R --prefix file --chunk-ranges file-position-chunk-ranges.rds --mode 'file'
$ Rscript ~/VCFdbR/pipeline/03-index-db.R --prefix file --db file.db
Absolutely! Open an issue, or a pull request. We are particularly interested in:
- Code efficiency to speed up database creation
- Changes to allow databases creation to resume after an interruption
- This is entirely possible with the current setup -- but we've had trouble automating the process