Найти в Дзене
Моя генеалогия

Мой эксперимент с VCF и импьютацией

Я - энтузиаст, а не профессиональный биоинформатик, но мне всегда было интересно, как устроены генетические сервисы «изнутри». Всё началось со стандартной операции: я скачал VCF‑файл из личного кабинета Генотек, конвертировал его в формат 23andMe V5 через DNA Kit Studio и загрузил полученный файл на GEDmatch. Но столкнулся с неожиданной ошибкой: Status: Matchy - too many matches GEDmatch не объясняет, что именно значит «слишком много совпадений» - это не баг с понятной ошибкой, а некое «статус‑сообщение», после которого система просто отказывает в выдаче результатов. Задача моего эксперимента: Результатом стал удачный эксперимент - и, по сути, рабочее руководство, которое может пригодиться тем, кто хочет понять, как обрабатываются VCF-файлы и что такое импьютация на практике. VCF‑файл - это текстовый формат, где каждая строка описывает SNP (rsID) и аллели. Если у SNP нет генотипа, в файле это выглядит как "--". GEDmatch ожидает, что в большинстве позиций генотип будет заполнен. Чтобы п
Оглавление

Я - энтузиаст, а не профессиональный биоинформатик, но мне всегда было интересно, как устроены генетические сервисы «изнутри». Всё началось со стандартной операции: я скачал VCF‑файл из личного кабинета Генотек, конвертировал его в формат 23andMe V5 через DNA Kit Studio и загрузил полученный файл на GEDmatch. Но столкнулся с неожиданной ошибкой:

Status: Matchy - too many matches

GEDmatch не объясняет, что именно значит «слишком много совпадений» - это не баг с понятной ошибкой, а некое «статус‑сообщение», после которого система просто отказывает в выдаче результатов.

Задача моего эксперимента:

  1. Понять, почему GEDmatch не принял мой файл
  2. Выявить, чем он отличается от официального 23andMe V5 файла от Генотек
  3. Восстановить недостающие данные (импьютация)
  4. Доказать на практике, что после импьютации файл становится корректным и загружается без ошибок

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

Проблема исходного файла

Пропуски в генотипах и их влияние

VCF‑файл - это текстовый формат, где каждая строка описывает SNP (rsID) и аллели. Если у SNP нет генотипа, в файле это выглядит как "--". GEDmatch ожидает, что в большинстве позиций генотип будет заполнен.

  • Много "--" → плохие или ложные совпадения
  • GEDmatch может отклонить такой файл с ошибкой too many matches

Сравнение: мой файл против официального

Чтобы понять, в чём именно проблема, я приобрёл официальный 23andMe V5 файл у Генотек и сравнил его со своим конвертированным из VCF.

-2

Пропуски в генотипах:

  • В моём файле 136 459 строк (21,46%) содержали "--" вместо аллелей
  • В официальном файле - всего 40 116 строк (6,38%) с пропусками

Общее число SNP:

  • В моём файле: 635 966
  • В официальном файле: 628 672

Пример строк:

  • Мой файл:

rs12184325 1 754105 --

rs7538305 1 824398 --

rs28444699 1 830181 --

  • Официальный файл:

rs12184325 1 754105 TC

rs7538305 1 824398 AA

rs28444699 1 830181 GG

В моём файле гораздо больше пустых значений. Это и стало основной причиной, по которой GEDmatch не принял файл. Вероятно, Генотек перед конвертированием выполняет импьютацию.

Как работает DNA Kit Studio

DNA Kit Studio - это удобный, но достаточно простой инструмент. Его задача - конвертация VCF в формат, похожий, например, на raw data 23andMe V5. Важно понимать, что он не достраивает пропущенные данные.

Как проходит процесс:

1. Загружается шаблон SNP из формата 23andMe V5 (список rsID)

2. Инструмент ищет эти rsID в вашем VCF

3. Если rsID найден:

  • Если генотип заполнен - записывает его
  • Если нет - ставит "--"

4. Если rsID в VCF вообще не найден - пропускает

Таким образом, все пропуски переносятся в итоговый файл без изменений. DNA Kit Studio не производит импьютацию, и именно поэтому получаются неполные файлы.

Импьютация VCF: мой опыт с Beagle

Импьютация - это статистический метод предсказания недостающих генетических данных, опираясь на данные соседних SNP и референс‑панель (например, 1000 Genomes).

Подготовка данных

Чтобы устранить пропуски и создать файл, пригодный для анализа, я провёл импьютацию с помощью Beagle и референсной панели 1000 Genomes.

Перед запуском Beagle я:

  • Отфильтровал и нормализовал свой VCF-файл
  • Переименовал хромосомы в формат chrN, как требует Beagle
  • Удалил дублирующиеся записи и проверил формат совместимости

Запуск и конвертация

  • Я запустил Beagle с параметрами, рекомендованными в документации
  • На выходе получил файл, где большая часть пропусков была заполнена
  • Этот VCF я снова конвертировал в формат 23andMe V5 через DNA Kit Studio

Проверка корректности файла после импьютации

Пропуски и общее количество SNP

-3

Пропуски в генотипах:

  • Новый файл: 34 742 (5,46%)
  • Официальный файл: 40 116 (6,38%)
  • Полностью равные генотипы: 560 210 (98,93%)

Общее число SNP:

  • Новый файл: 635 966
  • Официальный файл: 628 672
  • Общие SNP: 616 037

Пример строк:

  • Новый файл:

rs12184325 1 754105 CT

rs7538305 1 824398 AA

rs28444699 1 830181 GG

  • Официальный файл:

rs12184325 1 754105 TC

rs7538305 1 824398 AA

rs28444699 1 830181 GG

Файл после импьютации стал даже полнее официального. Уровень пропусков теперь сопоставим.

Загрузка в GEDmatch

-4
  • Новый файл был успешно загружен на GEDmatch
  • Ошибка too many matches больше не возникала
  • Появились корректные совпадения с другими пользователями

One-to-One сравнение

-5

Чтобы оценить точность полученного после импьютации файла, я сравнил его с официальным файлом от Генотек с помощью инструмента One-to-One Autosomal на GEDmatch.

Результаты:

  • Всего найдено 52 общих сегмента
  • Общая длина совпадающих сегментов - 3527,6 cM
  • Самый длинный сегмент - 209,5 cM
  • Совпадения покрывают весь геном: от 1 до 22 хромосомы без пробелов
  • Количество SNP в каждом сегменте одинаковое или почти одинаковое

Это значит:

  • Совпадения между моим импьютированным файлом и официальным - практически идентичны
  • Незначительные расхождения (например, минимальные отличия по End Location или # SNPs) могут быть вызваны округлением или особенностями алгоритма, но они несущественны и не влияют на интерпретацию
  • Коэффициент совпадения (CM) и количество SNP полностью подтверждают корректность импьютации

Таким образом, после импьютации мой файл ведёт себя в GEDmatch точно так же, как официальный - а это главная цель эксперимента.

Этнический профиль (Eurogenes K36)

Я также сравнил этническую оценку через калькулятор Eurogenes K36:

Новый файл:

-6

Официальный файл:

-7

Результаты практически идентичны. Импьютация не исказила пропорции, а лишь восстановила недостающие SNP. Это ещё одно подтверждение корректности метода.

Теперь вы видите: даже без доступа к исходному raw‑файлу, можно на практике добиться качественного результата с помощью импьютации. И этот путь вполне доступен для энтузиастов.