Empirical Bayes Single Nucleotide Variant Calling for Next Generation Sequencing Data
### LFDR-based Variant Calling Identifies single nucleotide variants in next-generation sequencing data by estimating their local false discovery rates. For more details, see https://doi.org/10.1038/s41598-024-51958-z.
The package can be installed from the GitHub repository
::install_github("empiricalbayes/SNVLFDR") devtools
You can load SNVLFDR as follows:
library(SNVLFDR)
<- system.file("extdata", "bam_input.csv", package="SNVLFDR")
bam_input <- system.file("extdata", "regions.bed", package="SNVLFDR")
bedfile =20
BQ.T=20
MQ.T=0.95
pi0.initial=0.01
AF.T=10
DP.T=0.01
LFDR.T=NULL
error='empirical'
method=0.01
epsilon=get_LFDRs(bam_input,bedfile,BQ.T,MQ.T,pi0.initial,AF.T,DP.T,LFDR.T,error,method,epsilon)
output
#Estimated LFDRs
$estimated.LFDRs
output
#Estimated proportion on non-mutant sites
$estimated.pi0
output
#Filtered Bam matrix that includes estimated LFDRs
$filtered.bam
output
## How to run SNVLFDR to prioritize variants called by another variant caller
<- system.file("extdata", "bam_input.csv", package="SNVLFDR")
bam_path <- system.file("extdata", "calls.vcf", package="SNVLFDR")
calls_path =get_LFDRs_given_caller(bam_input=bam_path,calls=calls_path,LFDR.T=0.01,error=NULL)
output
#Updated VCF file that includes estimated LFDRs
$updated.vcf
output
Karimnezhad, A and Perkins, T.J. (2024) Empirical Bayes single nucleotide variant-calling for next-generation sequencing data. Scientific Reports 14, 1550, https://doi.org/10.1038/s41598-024-51958-z