Question:
Le moyen le plus simple de déterminer le type de variante structurelle?
SmallChess
2018-07-16 17:57:37 UTC
view on stackexchange narkive permalink

Dans VCF 4.2, une variante structurelle (SV) peut être décrite avec le mot-clé BND dans SVTYPE . Par exemple, l'exemple suivant est une insertion (de https://samtools.github.io/hts-specs/VCFv4.2.pdf):

  # CHROM POS ID REF ALT QUAL FILTER INFO2 321682 bnd VT] 13: 123456] AGTNNNNNCAT 6 PASS SVTYPE = BND; MATEID = bnd U13 123456 bnd UC CAGTNNNNNCA [2: 321682 [6 PASS SVTYPE = BND; MATEID = bnd V  

Le mot-clé peut être utilisé pour décrire n'importe quel événement SV.

Je voudrais savoir comment savoir si un événement est une insertion, une suppression, une duplication, une inversion, etc. L'algorithme / programme me dira que l'exemple ci-dessus est une insertion.

Je ne suis pas en mesure de trouver un outil capable de faire la conversion à ma place.

PS: Le programme que j'utilise est GRIDSS. Ce programme ne générerait que BND dans le champ SVTYPE. Ce n'est pas strictement un bug (BND peut être utilisé pour n'importe quel arrangement SV), mais c'est ennuyeux en analyse.

Que diriez-vous de «juste» utiliser l'attribut «INFO / SVTYPE»?
@Pierre SVTYPE est BND.
@Pierre Certains programmes SV tels que GRIDSS ne produisent que BND vers le SVTYPE. Sinon, je ne serais pas là pour vous demander.
à partir de la spécification VCF: `INFO = La valeur doit être l'une des DEL, INS, DUP, INV, CNV, BND.`. Donc BND (break end) n'est PAS un INDEL, et PAS une insertion.
@Pierre Mon exemple ci-dessus est tiré de la spécification.
"Certains programmes SV tels que GRIDSS ne sortent que BND vers le SVTYPE" oh, je vois
Puis-je vous suggérer de ne pas utiliser GRIDSS et d'utiliser à la place un outil qui produit une sortie valide?
@terdon Que voulez-vous dire? GRIDSS est un programme SV publié. BND est une sortie VCF valide?
S'il utilise «BND» pour indiquer une insertion, alors il ne suit pas les spécifications VCF puisque le «SVTYPE» pour les insertions doit être «INS» et «BND» ne doit être utilisé que pour les fins de rupture.
Un répondre:
SmallChess
2018-07-19 10:01:35 UTC
view on stackexchange narkive permalink

L'auteur de GRIDSS avait publié sa propre solution sur Github. Le code est:

  simpleEventType <- function (gr) {return (ifelse (seqnames (gr)! = Seqnames (partner (gr)), "ITX", # inter-chromosomosal ifelse ( gr  $ insLen > = abs (gr $  svLen) * 0.7, "INS", ifelse (strand (gr) == strand (partner (gr)), "INV ", ifelse (xor (start (gr) < start (partner (gr)), strand (gr) ==" - ")," DEL "," DUP ")))))}  
Pouvez-vous s'il vous plaît élaborer sur cette réponse? Qu'est-ce que gr? Ressemble à R, quelle bibliothèque dois-je utiliser pour cela?


Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 4.0 sous laquelle il est distribué.
Loading...