Open luceamso opened 2 years ago
the --family-expr
would require all the affected kids to share the same recessive variant whereas --trio
would find variants where each kid individually had a recessive variant.
The intersection of the 3 trio expressions (where all 3 kids have the same variant) should match the recessive for the --family-expr -- that is, there should be no intersection. If that's not the case, you could paste the genotypes and variant and I can have a look.
Thanks for getting back to me so quickly.
No, you're right.
I thought --family-expr
also showed every recessive variants.
Thanks very much.
Hi,
--family-expr
require variants shared by all the affected kids, but my output doesn't. It shows that all the affected kids do not share the variant, but the slivar does.
I used the following codes:
--family-expr 'rec:fam.every(segregating_recessive) && (INFO["Func.refGeneWithVer"] == "splicing" || INFO["Func.refGeneWithVer"] == "exonic" || INFO["Func.refGeneWithVer"].match("x3bsplicing") != null)' \
--family-expr 'a:fam.every(function(s) {return (s.het || s.hom_ref) && s.GQ >= 20 }) && fam.some(function(s) { return s.het && s.affected }) && (INFO["Func.refGeneWithVer"] == "splicing" || INFO["Func.refGeneWithVer"].match("x3bsplicing") != null)' \
--family-expr 'b:fam.every(function(s) {return (s.het || s.hom_ref) && s.GQ >= 20 }) && fam.some(function(s) { return s.het && s.affected }) && (INFO["ExonicFunc.refGeneWithVer"] == "stopgain" || INFO["ExonicFunc.refGeneWithVer"] == "frameshift_deletion" || INFO["ExonicFunc.refGeneWithVer"] == "frameshift_insertion")' \
--family-expr 'c:fam.every(function(s) {return (s.het || s.hom_ref) && s.GQ >= 20 }) && fam.some(function(s) { return s.het && s.affected }) && (INFO["Func.refGeneWithVer"] == "exonic" && (INFO.MetaSVM_pred == "D" || INFO.REVEL_rankscore >= 0.75))' \
--family-expr 'd:fam.every(function(s) {return (s.het || s.hom_ref) && s.GQ >= 20 }) && fam.some(function(s) { return s.het && s.affected }) && (INFO["ExonicFunc.refGeneWithVer"] == "nonframeshift_deletion" || INFO["ExonicFunc.refGeneWithVer"] == "nonframeshift_insertion")' \
--family-expr 'e:fam.every(function(s) {return (s.het || s.hom_ref) && s.GQ >= 20 }) && fam.some(function(s) { return s.het && s.affected }) && (INFO["Func.refGeneWithVer"] == "intronic" && (INFO.spliceAI_DS_AG > 0.5 || INFO.spliceAI_DS_AL > 0.5 || INFO.spliceAI_DS_DG > 0.5 || INFO.spliceAI_DS_DL > 0.5))' \
Could you please look at the attachment? example.txt
can you show a single expression that doesn't work along with the family structure? the best is a VCF file with a single variant and header along with the family/ped and a single expression.
Here's the files. Thank you so much! And I know I can use attributes of FORMAT when using trio. Can't it be applied to sample in family?
Hi, Brent Have you checked the file? Did you find any errors?
Hi Brent,
I encountered the following issues and would like to ask you for help. I ran
--family-expr
because I considered fam1(unaffected parents and 3 affected kids) as one cohort. When using the--family-epxr
, no any recessive variants were observed. However, it was found when the trio vcf file(cut fam1 to trio) was input to check other conditions.So I tested expression with following: 1)
--family-expr
with trio vcf file 2)--trio
with fam1's vcf fileAnd the recessive variants were extracted from each. Only in
--family-expr
with fam1's vcf file, the recessive variants doesn't appear. (I also applied the same filter condition to all expressions.)Thanks for your time, Seoon.
--------------------------------PED-------------------------------------
family_ID sample_ID paternal_ID maternal_ID sex affection
fam1 F7 0 0 1 1 fam1 F9 0 0 2 1 fam1 F8 F7 F9 2 2 fam1 F14 F7 F9 2 2 fam1 F15 F7 F9 1 2 fam2 F10 0 0 1 1 fam2 F11 F10 0 1 1 fam2 F16 F10 0 2 1
--------------------------------codes------------------------------------- 1)
--family-epxr
slivar expr --js slivar-functions.js --vcf cs_affected_fam1_snpanno.vcf.gz --ped cs_two_fam.ped --info "(INFO['gnomAD_r2.1.1_merged_all'] < 0.01 || INFO['gnomAD_r2.1.1_merged_all'] == '.') && INFO.AC >1 && (INFO['Func.refGeneWithVer'] == 'exonic' || INFO['Func.refGeneWithVer'] == 'splicing') && INFO['ExonicFunc.refGeneWithVer'] != 'unknown' && variant.FILTER == 'PASS' && variant.ALT[0] != '*'" --family-expr "recessive:fam.every(segregating_recessive)"
2)
--trio
slivar expr --js slivar-functions.js --vcf cs_affected_fam1_snpanno.vcf.gz --ped cs_two_fam.ped--info "(INFO['gnomAD_r2.1.1_merged_all'] < 0.01 || INFO['gnomAD_r2.1.1_merged_all'] == '.') && INFO.AC >1 && (INFO['Func.refGeneWithVer'] == 'exonic' || INFO['Func.refGeneWithVer'] == 'splicing') && INFO['ExonicFunc.refGeneWithVer'] != 'unknown' && variant.FILTER == 'PASS' && variant.ALT[0] != '*'" --trio "recessive:recessive(kid, mom, dad)"