BFST(1)
β¨ bFst β the manual page, bestie edition β¨
okay so you found bFst(1) and you're like "what is this" β don't worry, I got you. this is the whole page, every single crumb of it, just with β¨personalityβ¨. buckle up. π
πΈ NAME πΈ
bFst β that's it, that's the name. short, sweet, iconic, no notes. π
π¦ SYNOPSIS π¦
bFst βtarget 0,1,2,3,4,5,6,7 βbackground 11,12,13,16,17,19,22 βfile
my.vcf βdeltaaf 0.1
likeβ¦ that's the vibe. you point it at a VCF, you tell it who's who, it does math. π§
π DESCRIPTION π
so bFst is a Bayesian approach to Fst. and the important part, the part that makes it eat: bFst accounts for genotype uncertainty in the model using genotype likelihoods. it's not out here pretending genotypes are all perfectly known, okay, it's being honest about the uncertainty and it's thriving. π
if you want the full lore, the detailed description lives in: `A Bayesian approach to inferring population structure from dominant markers' by Holsinger et al., Molecular Ecology Vol 11, issue 7, 2002. and here's the tea β the likelihood function has been modified to use genotype likelihoods provided by variant callers. periodt.
so there are five free parameters getting estimated in this model, and yes I'm listing all five because every one of them matters:
- each subpopulation's allele frequency
- each subpopulation's Fis (that's the fixation index, within each subpopulation)
- a free parameter for the total population's allele frequency
- Fst
(okay technically that reads as five free parameters total across "each subpopulation's allele frequency and Fis" + total pop allele freq + Fst β that's exactly what the page says and I'm not changing a single digit, bestie. π«Ά)
π OPTIONS π
π Output
11 columns, count them, no more no less:
SeqidPosition- Observed allele frequency in target.
- Estimated allele frequency in target.
- Observed allele frequency in background.
- Estimated allele frequency in background.
- Observed allele frequency combined.
- Estimated allele frequency in combined.
- ML estimate of Fst (mean)
- Lower bound of the 95% credible interval
- Upper bound of the 95% credible interval
π The required ones (yes, required, don't skip them)
-t,targetβ a zero bases comma separated list of target individuals corrisponding to VCF columns. (that's "corrisponding", spelled exactly how the page spells it, we don't edit here π)-b,backgroundβ a zero bases comma separated list of background individuals corrisponding to VCF columns.-f,filea β a proper formatted VCF file. and listen, this one's a big deal:
theFORMATfield MUST contain"PL"β like, MUST must. noPL, no party. π
-d,deltaafβ skip sites were the difference in allele frequency is less than deltaaf. (again, "were", exactly as written, I am not the one fixing typos in a manpage, I am simply the one delivering them to you with love πΈ)
β Type
statistics β it's giving statistics. it's literally classified as statistics. slay.
π EXIT VALUES π
0β Success. the happy ending. we love to see it. π₯³- not 0 β Failure. something went sideways, bestie. π
π SEE ALSO π
vcflib(1)β go read that one too, it's the family. π«Ά
π OTHER π
π LICENSE
Copyright 2011-2024 (C) Erik Garrison and vcflib contributors. MIT licensed. Copyright 2020-2024 (C) Pjotr Prins.
(legal text stays legal text, I'm just handing it to you in a cute font. π)
ποΈ AUTHORS
Erik Garrison and vcflib contributors. absolute main characters, no cap. π
and that's the whole page, bestie!! this beauty is from bFst (vcflib) β the version/source line at the bottom β so go forth, pass your -t, -b, -f and -d, and make some credible intervals. π¦β¨π
π¦ where this page comes from
- debian trixie: libvcflib-tools 1.0.12+dfsg-1 Β· MIT
- ubuntu questing: libvcflib-tools 1.0.12+dfsg-1
- ubuntu resolute: libvcflib-tools 1.0.12+dfsg-2 Β· MIT
- ubuntu stonking: libvcflib-tools 1.0.12+dfsg-2 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms