Анализ вариантов и аннотация

Материал из Институт биоинформатики
Перейти к: навигация, поиск

Для проведения клинической диагностики недостаточно просто получить набор вариантов, необходимо его аннотировать, разделить генотипы по передаче от родителей (если возможно), а также глубоко проанализировать. Эти этапы выполняются как программно (при помощи GATK или других пакетов), так и вручную.

Общая аннотация вариантов

В качестве одного из первых этапов аннотации вариантов их можно обработать программами, предсказывающими потенциальный эффект варианта. Эти программы могут делиться на разные подтипы: какие-то из них лишь оценивают тип варианта (сэйм-сенс, миссенс, нонсенс и т.п.), другие пытаются предсказать патогенность варианта по его эффекту на структуру белка или организацию хроматина.

К первой группе относятся приложения типа ANNOVAR, Oncotator или SnpEff. Эти приложения аннотируют варианты согласно тому, какой именно эффект они оказывают на белок, и присваивают вариантам уровень значимости. В программе SnpEff, используемой нами, варианты разделяются по уровню на когорты LOW (низкий эффект - синонимичные замены), MODERATE (несинонимичные замены, вставки и выпадения кодонов), HIGH (нонсенс мутации, потеря старт/стоп кодона, сплайсинговые мутации, вариации активного центра фермента или участка белок-белковых взаимодействий, сдвиг рамки считывания), а также MODIFIER (замены в интронах, нетранслируемых областях или межгенных участках). Ко второй группе (пока не представленной в нашем пайплайне) относятся программы типа PolyPhen 2, SIFT и другие. Эти программы предсказывают эффект мутации и LOF-мутации при помощи определенного набора специфических свойств конкретного варианта (положение, тип аминокислотной замены и т.д.)

Аннотация вариантов по базам данных

Часто бывает полезно аннотировать уже известные ранние варианты с помощью их ID в базе данных (вроде dbSNP или ClinVar) или информации из GWAS-каталога. Для этого используется программа SnpSift. В ее возможности входит добавление ID или Info полей из VCF-файла базы данных в VCF-файл из эксперимента, фильтрация вариантов, добавление и удаление информационных полей и аннотация по каталогу GWAS. В нашем пайплайне мы аннотируем варианты при помощи dbSNP ID, инфо-полей из ClinVar (важность - CLNSIG, ассоциированный фенотип - CLNDBN, а также флаги PM и OM, указывающие на наличие для данного варианта подтверждения в литературе и записи в базе фенотипов OMIM). Также для вариантов добавляется информация о функции затрагиваемого гена.

Запуск SnpEff и SnpSift:

java -Xmx64g -jar /Molly/barbitoff/software/snpEff/snpEff.jar \
     -noHgvs -v -o gatk hg19 experiment.GF.vcf > experiment.snpeff.vcf 2> experiment.Progress.log

# Adding rsID
java -Xmx64g -jar /Molly/barbitoff/software/snpEff/SnpSift.jar \
     annotate -v -noInfo /Molly/barbitoff/gatk-bundle-b37/dbsnp_138.b37.vcf \
     experiment.snpeff.vcf > experiment.dbSNP.vcf 2> experiment.dbSNP.Progress.log

# Adding only specific info
java -Xmx64g -jar /Molly/barbitoff/software/snpEff/SnpSift.jar \
     annotate -v -noId -info PM,OM,CLNSIG,CLNDBN,CLNREVSTAT \
     /Molly/barbitoff/exomes/kits_data/clinvar_20151201.vcf \
     experiment.dbSNP.vcf > experiment.clinvar.vcf

# Removing INFO - example
java -Xmx64g -jar /Molly/barbitoff/software/snpEff/SnpSift.jar rmInfo experiment.vcf \
     "AC" "AF" "AN" "BaseQRankSum" > experiment.rminfo.vcf

# SnpSift filtering - keeping variants with high and moderate effect
java -Xmx64g -jar /Molly/barbitoff/software/snpEff/SnpSift.jar \
     filter -v "( EFF[*].IMPACT = 'MODERATE' ) | ( EFF[*].IMPACT = 'HIGH' )" \
     experiment.vcf > experiment.modhigheff.vcf                

Фазирование генотипов

Дополнительная стадия, призванная облегчить медицинский генетический анализ - фазирование генотипов по передаче в родословной (определение материнского/отцовского происхождения аллели). Для этого требуется файл с родословной, имеющий расширение .ped и форматированный следующим образом:

# Comments
# Gender - 0 - unknown; 1 - male; 2 - female
# Phenotype - 0 - unaffected; 1 - affected
# FAMILY_ID    SAMPLE_ID    MAT_ID    PAT_ID    GENDER    PHENOTYPE
FAM001    sample_X    sample_M    sample_F    1    1

Запуск GATK для фазирования выполняется так:

java -Xmx64g -jar /Molly/barbitoff/software/gatk-protected/target/GenomeAnalysisTK.jar -T PhaseByTransmission \
     -R /Molly/barbitoff/reference/GATK_b37/human_g1k_v37.fasta \
     -V experiment_name.complete.vcf \
     -ped samples.ped \
     -o experiment_name.complete.phased.vcf

Важно, что фазирование производится только в трио пациентов и парах родитель-ребенок. Для семей с несколькими сиблингами рекомендуется прогонять программу в несколько пассажей, убирая из родословной одного из сибсов и добавляю другого.