brentp / slivar

genetic variant expressions, annotation, and filtering for great good.
MIT License
248 stars 23 forks source link

understanding slivar output #141

Closed prasundutta87 closed 2 years ago

prasundutta87 commented 2 years ago

Hi,

I was just wondering if I could be helped with slivar output. This is the command I am using to get denovo SVs from my trio VCF.

slivar expr --vcf input.vcf --ped ped.ped -o denovo.vcf --family-expr 'denovo:fam.every(segregating_denovo)' --js slivar-functions.js

I am getting these errors, rest are warnings:

[pedfile] parents referenced by other samples that were not present in pedigree file: Mother [slivar] 3 samples matched in VCF and PED to be evaluated

Finally, I got this message: [slivar] Finished. evaluated 4162 total variants and wrote 4162 variants that passed your slivar expressions. However, no denovo variants were detected. Is it something to do with '[pedfile] parents referenced by other samples that were not present in pedigree file: Mother' this message? I have attached my edited javascript file and ped file for your reference. slivar-functions.txt

Regards, Prasun

brentp commented 2 years ago

[slivar] Finished. evaluated 4162 total variants and wrote 4162 variants that passed your slivar expressions.

This means that you didn't use the --pass-only flag so all variants were written.

Can you show your pedigree file?

prasundutta87 commented 2 years ago

Sorry, I missed attaching that. Here it is now: ped.ped.txt

brentp commented 2 years ago

that seems ok. so you have evaluated 4162 variants and none of them are de novo by the requirements in the segregating_denovo function that you have modified. Your VCF has a VAF field that varies between 0 and 1?

prasundutta87 commented 2 years ago

Yes, my VCF has a VAF (variant allele fraction) field which is basically (alt reads)/(ref reads+alt reads) and it ranges from 0 to 1.

--pass-only worked and I do get an empty file (because there were no denovos in my vcf as per the function)

Just wondering on the difference between segregating_denovo and denovo? I am probably using them wrong. I am following the rare disease manual on this github page, but trying out simple functions first.

I also do a GQ based filtering on my VCF beforehand where any SVs where GQ > 20, their GTs are turned into missing. I am guessing that slivar filters SVs out too where there is any missing value in any one sample of a trio.

brentp commented 2 years ago

segregating_denovo works on multi-generational families, but expects the de novo to be associated with the phenotype.

denovo is for trios and only looks at inheritance pattern, not phenotype.