XLRHOI27VJS2MEK2Y6PCFSQR4FRV2S6TAD3UZBOMM5TNEJAJ3M4QC
RGHYOX4RJ7FRDXY2CWK6I7235KUE6RLVO57BD7JB7PEAG6DCQGZQC
WHKJYYZX7Y2VYHEX4NAKKV4DHI3RBHY3XJMIGPYBPCD3DNWZUHDQC
WXXVA2RG5DAZMQVHHYXI3BDVPU2XOT2DGKXEZG777DZJI44OOFVAC
RHWQQAAHNHFO3FLCGVB3SIDKNOUFJGZTDNN57IQVBMXXCWX74MKAC
ZTHTSYUIE3QL2SSUDF4QHMLSKOJKAHQAWW5AGJ3B2FZH2QCVW67AC
FQTFZ7F4IO2FJYSDI7P3VH36WMMS52XBTGKC4V5WKVE3JYIIXV4QC
6XUWY7T2ITWJYRUHDWSG66N7DYCBBXHRHQAAS7GGINDYUJHGMARQC
JC7WIPNKI5INKLTOLR4OACIUFNKDXOOYXAEXSE4VK2NDK7H7GIPAC
OWD5YD74S7L5FUCGYECRJIJ7LQJ6Z6JRMGLUQD5XKVAGF4EDLFWAC
******* TODO classification clinvar codée dbSNP ?
Sur le chromosome 20
*Attention* CLNSIG a plusieurs champs (séparé par une virgule)
On y accède avec INFO/CLNSIG[*]
Ensuite, chaque item peut avoir plusieurs haploïdie (séparé par un |). IL faut donc utiliser une regexp
NB: *ne pas mettre la condition* dans une variable !!
Pour avoir les clinvar patho, on veut 5 mais pas 255 (= autre) pour la classification !`
#+begin_src sh :dir ~/code/bisonex/test_isec
bncftools query -f '%INFO/CLNSIG\n' dbSNP_common_chr20.vcf.gz -i
'INFO/CLNSIG[*]~"^5|" | INFO/CLNSIG[*]=="5" | INFO/CLNSIG[*]~"|5"'| sort | uniq
#+end_src
Si on exclut tous les patho:
#+begin_src sh :dir ~/code/bisonex/test_isec
bcftools query -f '%ID\n' dbSNP_common_chr20.vcf.gz -e 'INFO/CLNSIG[*]~"^5|" | INFO/CLNSIG[*]=="5" | INFO/CLNSIG[*]~"|5"'| sort | uniq | wc -l
#+end_src
#+RESULTS:
: 518842
On en a 10 de plus que la version d'Alexis
#+begin_src sh :dir ~/code/bisonex/test_isec
bcftools query -f '%ID\n' dbSNP_common_chr20.vcf.gz -e 'INFO/CLNSIG[*]~"^5|" | INFO/CLNSIG[*]=="5" | INFO/CLNSIG[*]~"|5"' | sort > common-notpatho-test.txt
sort common-notpatho-alexis.txt > sorted.txt
comm -23 common-notpatho-test.txt sorted.txt
#+end_src
On teste juste sur cette ligne
#+begin_src sh :dir ~/code/bisonex/test_isec
bcftools filter -i 'POS=25390747' clinvar_chr20.vcf.gz -o clinvar_test.vcf.gz
bcftools filter -i 'POS=25390747' dbSNP_common_chr20.vcf.gz -o dbSNP_test.vcf.gz
#+end_src
On retrouve bien la ligne dans l'intersection...
#+begin_src sh :dir ~/code/bisonex/test_isec
bcftools filter -i 'POS=25390747' clinvar_chr20.vcf.gz -o clinvar_test.vcf.gz
bcftools index dbSNP_test.vcf.gz dbSNP_test.vcf.gz
bcftools index dbSNP_test.vcf.gz clinvar_test.vcf.gz
bcftools isec dbSNP_test.vcf.gz clinvar_test.vcf.gz -p test
#+end_src
#+RESULTS:
3. plus généralement, que faire si un seul ALT dbSNP est patho ? Il n'y a qu'un seul identifiant ...
| NC_000020.11 | 3234173 | rs3827075 | T | A,C,G | |
| NC_000020.11 | 3234173 | 262001 | T | G | Conflicting_interpretations_of_pathogenicity |
| NC_000020.11 | 3234173 | 1072511 | T | TGGCGAAGC | Pathogenic |
| NC_000020.11 | 3234173 | 208613 | TGGCGAAGC | G | Pathogenic |
| NC_000020.11 | 3234173 | 1312 | TGGCGAAGC | T | Pathogenic |
3. s'il y a plusieurs variantions à une position, il faut bien vérifier que tous ne sont pas patho.
La version d'Alexis le fait bien
| NC_000020.11 | 3234173 | rs3827075 | T | A,C,G | |
| NC_000020.11 | 3234173 | 262001 | T | G | Conflicting_interpretations_of_pathogenicity |
| NC_000020.11 | 3234173 | 1072511 | T | TGGCGAAGC | Pathogenic |
| NC_000020.11 | 3234173 | 208613 | TGGCGAAGC | G | Pathogenic |
| NC_000020.11 | 3234173 | 1312 | TGGCGAAGC | T | Pathogenic |