Проект состоит из нескольких скриптов, описание каждого из которых будет приведено ниже:
- Splitting
- Classification
- Illumina merge
- fastq2fasta
- Heuristics
- Multialignment
- HMM
Программа получает на вход fasta-файл и выходную директорию, а затем разделяет полученный на вход файл на несколько файлов фиксированной длины. Ключи программы:
--in_file
(полный путь до входного файла)
--out_dir
(полный путь до папки, куда скрипт перепишет полученные файлы)--len_spl
(длина последовательностей, на которые программа разобъёт входной файл)
Программа получает на вход файл, а также тип цепи иммуноглобулинов, которые должны лежать в данном файле - LC (light cahin) или HC (heavy chain). Программа для каждой последовательности файла перебирает все шесть типов сбивки рамки считывания - на 0, 1, 2 для каждого из двух прочтений - прямого и обратного. Если программа находит каком-то смещении все четыре FR региона при транслировании последовательности в аминокислоты, то она записывает её в файл good, если 2-3 FR - региона совпали, то отправляет в файл bad, иначе - в файл trash. Ключи программы:
--in_file
(полный путь до входного файла)
--out_dir
(полный путь до папки, куда скрипт перепишет полученные файлы)--path_germlines
(полный путь до папки с FR - регионами)--is_heavy
(1 если обрабатываемый файл содержит LC иначе - 0)
Ниже привожу описание формата выходного файла: ###Файл good Файл содержит 12 столбцов:
seqid
— идентификатор последовательностиseq
— сама нуклеотидная последовательностьFR1
— предполагаемый исходный FR1FR2
— предполагаемый исходный FR2FR3
— предполагаемый исходный FR3FR4
— предполагаемый исходный FR4FR1i
— пара двух чисел: начало и конец FR1 (в преобразованной АК-последовательности)FR2i
— пара двух чисел: начало и конец FR2 (в преобразованной АК-последовательности)FR3i
— пара двух чисел: начало и конец FR3 (в преобразованной АК-последовательности)FR4i
— пара двух чисел: начало и конец FR4 (в преобразованной АК-последовательности)shift
— сдвиг рамки считывания (после разворота, если разворот осуществляется)rflag
— флаг, указывающий, требуется ли сделать reverse complement от заданной последовательности
###Файл bad Имеет все те же поля, что и файл good, но регионы, не нашедшие в последовательности совпадений имеют вместо названий и индексов символ ".".
###Файл trash Просто содержит массив имён строк, не нашедших в себе хотя бы двух FR регионах при всех шести смещениях.
Программа разделяет файлы "fastq" для дальнейшей работы с ними с помощью программы Illumina merge. Ключи программы:
--in1
(полный путь до входного файла 1)
--in2
(полный путь до входного файла 2)--out_dir
(полный путь до выходной папки)--n
(кол-во последовательностей в одном файле)
Программа сливает два прочтения в обе строны ДНК-последовательности технологией "Illumina". Ключи программы:
--dir
(полный путь до выходной директории программы SplitterIlumina)
--num
(номер файла)
Программа переводит все fastq файлы входной директории в fasta файлы.
--in_dir
(полный путь до входной папки)
--out_dir
(полный путь до выходной папки)
Программа берет файлы из класса bad и разделяет их по двум новым классам new_good и new_bad, в которых будут лежать последовательности в формате csv. На вход нужно подать файл, содержащий класс bad и директории папок, куда программа будет складывать новые разделения.
--file_in
(полный путь до входного файла, то есть до класса bad)
--dir_out_b
(полный путь до папки, в которой будут лежать новые new_bad)--dir_out_g
(полный путь до папки, в которой будут лежать новые new_good)--file_in_fr
(полный путь до папки, где лежат все FR)
Программа делит файлы на семейства в зависимости от совпадения FR-регионов. Ключи программы:
--in_file
(полный путь до входного файла, то есть до csv файла)
--out_dir
(полный путь до выходной директории)--is_good
(1 если обрабатываемый файл не содержит пропуски иначе - 0)
Программа получает на вход файл семейства формата csv и, фиксируя FR-регионы, производит множественное выравнивание по всем неконстантным строкам. Полученные последовательности программа выводит в fasta-файл. Ключи программы:
--in_file
(поллный путь до входного csv - файла)
--out_file
(полный путь до выходного файла)
Программа берет последовательности из файла bad [fasta] и файла good [fasta], восстанавливает bad последовательности и выдает директорию с восстановленными bad (по одному в каждом файле). Ключи программы:
--file_in_good
(полный путь до входного файла, то есть до файла good)
--file_in_bad
(полный путь до входного файла, то есть до файла bad)--dir_out
(полный путь до папки, в которой будут лежать воссефновленные bad)