This examines the performance of various structural variation (SV) detection tools, focusing on four main SV types: deletions, duplications, inversions, and insertions. Among the evaluated tools, Manta consistently demonstrated superior accuracy in detecting deletions, achieving the highest F1 score. For insertions, both Manta and MELT showed competitive precision, while duplication and inversion detection generally exhibited lower performance across all tools. The study highlights that SV detection accuracy varies significantly depending on the type of SV and the specific tool used, underscoring the importance of choosing appropriate tools for different genomic analysis needs.
%% input data setting
% preprocessing
dos('unzip matlab_2024_kr.zip')
current_folder = pwd;
addpath(genpath(current_folder))
input_path=[current_folder '/data/']
sample_list='SRR622457'
delly_file=[input_path '/delly/' sample_list '/delly.vcf']
manta_file=[input_path '/manta/' sample_list '/results/variants/diploidSV_with_INV.vcf']
gridss_file=[input_path '/gridss/' sample_list '/gridss_R.bed']
sniffle_file=[input_path '/sniffles/' sample_list '/sniffles.vcf']
wham_file=[input_path '/wham/' sample_list '/wham.vcf']
svab_file=[input_path '/svaba/' sample_list '/germline_run.svaba.sv.vcf']
lumpy_file=[input_path '/lumpy/' sample_list '/' sample_list '.vcf']
REF_input=[input_path 'TruthSet/NA12878_DGV-2016_LR-assembly_with_chr_hg38.vcf']
REF_range=make_true_table_hg38(REF_input)
REF_range_filtered=filter_function(REF_range)
delly_range=make_delly_table(delly_file)
manta_range=make_manta_table(manta_file)
sniffles_range=make_sniffles_table_2(sniffle_file)
wham_range=make_wham_table(wham_file)
gridss_range=make_gridss_table(gridss_file)
svaba_range=make_svaba_table(svab_file)
lumpy_range=make_lumpy_table(lumpy_file)
manta_range_filtered=filter_function(manta_range)
delly_range_filtered=filter_function(delly_range)
lumpy_range_filtered=filter_function(lumpy_range)
wham_range_filtered=filter_function(wham_range)
gridss_range_filtered=filter_function(gridss_range)
svaba_range_filtered=filter_function(svaba_range)
sniffles_range_filtered=filter_function(sniffles_range)
%% Tool comparision
REF_SV=REF_range_filtered
tools_vs_LSV
LSV_vs_tools
precision_test
recall_test
f1_tset
Reference for Code Development
The code implementation should refer to the following study for insights on SV detection accuracy and benchmarking:
- Joe, S., et al. Comparison of structural variant callers for massive whole-genome sequence data. BMC Genomics, 2024.
引用格式
Soobok Joe (2025). Accuracy of SV detection across tools and variant types (https://www.mathworks.com/matlabcentral/fileexchange/176608-accuracy-of-sv-detection-across-tools-and-variant-types), MATLAB Central File Exchange. 检索时间: .
MATLAB 版本兼容性
创建方式
R2024b
兼容任何版本
平台兼容性
Windows macOS Linux标签
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!