Skip to content

Quick start

1. Inspect samples

bsaseq samples --vcf joint_calls.vcf.gz

2. Run the analysis

bsaseq run \
    --vcf joint_calls.vcf.gz \
    --high-bulk mutant_pool \
    --low-bulk wildtype_pool \
    --out results/analysis

Pool replicates by passing comma-separated sample names, and annotate candidates with snpEff:

bsaseq run \
    --vcf joint_calls.vcf.gz \
    --high-bulk "mut1,mut2" \
    --low-bulk "wt1,wt2" \
    --out results/analysis \
    --annotate --snpeff-db Sorghum_bicolor

See the CLI reference for all options and defaults.

Input requirements

The VCF must contain:

  • Biallelic SNPs (multiallelic sites and indels are skipped)
  • Per-sample AD (allelic depth) for allele-frequency calculation
  • Per-sample GQ (genotype quality) for filtering (recommended)

Recommended variant calling:

gatk HaplotypeCaller -R ref.fa -I mutant_pool.bam -I wildtype_pool.bam -O calls.vcf.gz
# or
bcftools mpileup -f ref.fa mutant_pool.bam wildtype_pool.bam | bcftools call -mv -Oz -o calls.vcf.gz

Outputs

File Description
*_variants.tsv Per-variant allele frequencies
*_windows.tsv Sliding-window statistics
*_regions.tsv / *_regions.bed Candidate regions
*_candidates.tsv Filtered candidate variants
*_annotated_candidates.tsv Candidates with snpEff effects (--annotate)
*_candidate_genes.tsv Gene-level summary (--annotate)
*_summary.txt Analysis summary
*_genome_wide.png/pdf Genome-wide Manhattan plot
*_region_*.png/pdf Regional zoom plots
*_af_distribution.png, *_depth_distribution.png Diagnostics