SAMtools

Бесплатно
Открытый исходный код
Windows
macOS
Linux

Сайт: www.htslib.org

SAMtools — набор командных утилит для обработки выравниваний коротких нуклеотидных последовательностей, представленных в форматах SAM, BAM и CRAM. Инструмент обеспечивает основные операции с файлами выравниваний: конвертацию между форматами, сортировку, индексирование, фильтрацию и извлечение подмножеств данных. SAMtools широко используется в биоинформатических пайплайнах для анализа секвенирования следующего поколения (NGS) и совместим с результатами множества выравнивателей и инструментов для анализа геномных данных.

Проект реализован как набор независимых команд, каждая из которых предназначена для выполнения одной или нескольких типичных задач при обработке выравниваний. Утилиты ориентированы на эффективную работу с большими файлами, обеспечивая как последовательную обработку, так и работу с индексированными файлами для быстрого выборочного доступа. Архитектурно SAMtools поддерживает потоковую обработку данных и интеграцию в автоматизированные пайплайны анализа, что делает его удобным компонентом в исследованиях геномики, транскриптомики и клинической генетики.

  • Конвертация форматов: преобразование между текстовым SAM и бинарными форматами BAM или сжатыми CRAM для уменьшения объёма хранения и ускорения обработки.
  • Сортировка: сортировка выравниваний по координатам референсного генома или по имени чтения для последующих операций и объединения результатов.
  • Индексирование: создание индексных файлов для BAM/CRAM, позволяющих быстро извлекать выравнивания для заданных регионов генома без полного чтения файла.
  • Фильтрация и выборка: отбор выравниваний по флагам, качеству выравнивания, по областям генома или по другим критериям, а также извлечение подмножеств записей в потоковом режиме.
  • Статистика и валидация: генерация суммарных статистик по файлам выравниваний (например, количество прочтений, распределение по флагам) и проверка целостности/корректности формата.
  • Манипуляции с метаданными: редактирование заголовков, добавление или изменение тэгов в записях выравниваний и управление сопутствующей информацией о референсе.
  • Слияние и разбиение: объединение нескольких файлов выравниваний в один или разделение больших файлов на части для параллельной обработки и архивации.
  • Поддержка потоков и автоматизация: возможность чтения и записи данных через стандартные потоки ввода-вывода для интеграции с другими утилитами и скриптами в составе сложных аналитических рабочих процессов.
Подробнее