bt-flor-从长读中构建转录本
bbcu.bt-flor的Python项目详细描述
bt_flor项目的伪代码=从长读中生成转录本
对象:
“readswithclosestartmapping对象”:
平均起始位置(“PositionAverage”对象) 外显子起始位置(表示每个外显子起始和结束坐标的数字列表) 外显子结束位置(表示每个外显子的开始和结束坐标的数字列表) exons_start_average(positionaverage对象列表) exons_end_average(位置平均对象列表)
程序:
主要程序:
输入:读取按readswithclosestartmapping(已排序的BAM文件)排序。
- 每次读取:
-
dt>距离CuxStestARTMAP(或不存在任何对象)的当前位置平均值:
- 2.1在当前“readswithclosestartmapping object”上运行“find_positions_average”过程,其中包含exons_start_positions。 2.2在当前“readswithclosestartmapping object”上运行“find_positions_average”过程,使用exons_end_positions。 2.4运行程序“build_transcripts”(功能的实现也包括上述两个步骤) 2.3为当前ReadswithCloseStartMapping创建一个新对象,并将该读取添加到新对象。
- 否则:在readswithcloseStartMapping.add嫒read()中实现
- 2.4属于当前读取的readswithclosestartmapping到最近的“readswithclosestartmapping对象”。 2.5使用readswithclosestartmapping object的read和start position运行“update_average_of_position”过程
找到最近的“RealsSuffCutestTrar映射对象”或创建如果不存在
程序“构建记录”:
输入:“readswithclosestartmapping object”,输出文件。
- 对于对象中的每次读取:
- 从“exons_x_average”列表中获取属于它们的平均外显子来构建转录本。
打印到输出文件:文本的唯一列表和每个文本的读取次数。
“查找平均位置”过程(在ReadsWithCloseStartMapping对象中):
输入:外显子x_位置(外显子开始位置或外显子结束位置),外显子x_平均值(外显子开始位置或外显子结束位置平均值)
- 外显子x_位置的每个i位置(在循环内动态变化):
- 根据i位置对reads(exons_x_positions)进行排序。
2.对于I位置的每个外显子X位置: 2.1如果不存在,则将新的位置平均对象添加到ExxsxxSalm列表 2.2如果读取的i位置在exons_x_位置接近“exons_x_平均值”列表中的i位置:
- 2.2.1运行程序“update_average_of_position”,其中i position of read和i position of“exons_x_average”
- 2.3其他:
- 2.3.1将读取的i位置移动到i+1位置(移动列表)