@@ -683,8 +683,7 @@ def process_merge_sites(self):
683683
684684 # Save results
685685 path = os .path .join (self .output_dir , "merge_sites.csv" )
686- self .merge_sites .to_csv (path , index = True )
687-
686+ self .merge_sites .to_csv (path , index = True )
688687
689688 def adjust_metrics (self , key ):
690689 """
@@ -706,21 +705,24 @@ def adjust_metrics(self, key):
706705 """
707706 visited = set ()
708707 for label in self .preexisting_merges :
709- label = self .label_handler .mapping [label ]
710- if label in self .graphs [key ].get_labels ():
711- if label not in visited and label != 0 :
712- # Get component with label
713- nodes = self .graphs [key ].nodes_with_label (label )
714- root = util .sample_once (list (nodes ))
715-
716- # Adjust metrics
717- rl = self .graphs [key ].run_length_from (root )
718- self .graphs [key ].run_length -= np .sum (rl )
719- self .graphs [key ].graph ["n_edges" ] -= len (nodes ) - 1
720-
721- # Update graph
722- self .graphs [key ].remove_nodes_from (nodes )
723- visited .add (label )
708+ try :
709+ label = self .label_handler .mapping [label ]
710+ if label in self .graphs [key ].get_labels ():
711+ if label not in visited and label != 0 :
712+ # Get component with label
713+ nodes = self .graphs [key ].nodes_with_label (label )
714+ root = util .sample_once (list (nodes ))
715+
716+ # Adjust metrics
717+ rl = self .graphs [key ].run_length_from (root )
718+ self .graphs [key ].run_length -= np .sum (rl )
719+ self .graphs [key ].graph ["n_edges" ] -= len (nodes ) - 1
720+
721+ # Update graph
722+ self .graphs [key ].remove_nodes_from (nodes )
723+ visited .add (label )
724+ except :
725+ pass
724726
725727 def find_label_intersections (self ):
726728 """
@@ -794,7 +796,8 @@ def quantify_merges(self):
794796
795797 """
796798 for key in self .graphs :
797- p = self .n_merged_edges [key ] / self .graphs [key ].graph ["n_edges" ]
799+ n_edges = max (self .graphs [key ].graph ["n_edges" ], 1 )
800+ p = self .n_merged_edges [key ] / n_edges
798801 self .metrics .loc [key , "% Merged" ] = round (100 * p , 2 )
799802
800803 # -- Compute Metrics --
0 commit comments