Skip to content
Snippets Groups Projects
Commit 39e2e021 authored by nina.marthe_ird.fr's avatar nina.marthe_ird.fr
Browse files

corrected the detection of last segment for child features

parent 23b3ba0d
No related branches found
No related tags found
No related merge requests found
......@@ -40,18 +40,20 @@ def generate_target_gff(feature_id,seg_size,args,reason_features_not_transfered,
if seg in feature_target_path: # parent path
child_first_seg=seg
break
if child_first_seg!='': # the child may be absent in this occurence !
for seg in child.segments_list_source:
if seg in reversed(feature_target_path): # parent path
for seg in reversed(child.segments_list_source):
if seg in feature_target_path: # parent path
child_last_seg=seg
break
if inversion: # done twice, make a function
child_size_on_new_genome=get_feature_start_on_target_genome_inv(child_last_seg,child_id,walk,copy_id)-get_feature_stop_on_target_genome_inv(child_first_seg,child_id,walk,copy_id)+1
else:
child_size_on_new_genome=get_feature_stop_on_target_genome(child_last_seg,child_id,walk,copy_id)-get_feature_start_on_target_genome(child_first_seg,child_id,walk,copy_id)+1
child_size_diff=abs(child_size_on_new_genome-child.size)
[cov,id]=get_id_cov(child_id,seg_size,feature_target_path) # change the target_path to get the childs one..... not straightforward.
# transfer the child feature:
line_gff=create_line_target_gff(child_first_seg,child_last_seg,child_id,child_size_diff,inversion,walk,cov,id,copy_id)
write_line(line_gff,output_target_gff,False)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment