Skip to content

Commit ca00cc8

Browse files
Reduced cognitive complexity #195
1 parent a6e6eb6 commit ca00cc8

File tree

1 file changed

+15
-6
lines changed

1 file changed

+15
-6
lines changed

instance_selection/_LocalSets.py

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,10 @@ def _compute_local_sets(self, instances, labels):
4343
for index, (sample, label) in enumerate(zip(instances, labels)):
4444
closest_enemy_distance = sys.maxsize
4545
closest_enemy_sample = None
46-
for index2, (_, label2) in enumerate(zip(instances, labels)):
47-
if index == index2 or label == label2:
48-
continue
49-
if distances[index][index2] < closest_enemy_distance:
50-
closest_enemy_distance = distances[index][index2]
51-
closest_enemy_sample = index2
46+
closest_enemy_distance, closest_enemy_sample = \
47+
self._find_enemy_distance(
48+
closest_enemy_distance, closest_enemy_sample, distances,
49+
index, instances, label, labels)
5250
structure[index] = [sample, [], None, closest_enemy_distance,
5351
closest_enemy_sample, label]
5452

@@ -68,6 +66,17 @@ def _compute_local_sets(self, instances, labels):
6866
'enemy', 'label']) \
6967
.transpose()
7068

69+
@staticmethod
70+
def _find_enemy_distance(closest_enemy_distance, closest_enemy_sample,
71+
distances, index, instances, label, labels):
72+
for index2, (_, label2) in enumerate(zip(instances, labels)):
73+
if index == index2 or label == label2:
74+
continue
75+
if distances[index][index2] < closest_enemy_distance:
76+
closest_enemy_distance = distances[index][index2]
77+
closest_enemy_sample = index2
78+
return closest_enemy_distance, closest_enemy_sample
79+
7180
def _sort_asc_lsc(self):
7281
"""
7382
The function takes a dataframe of local sets and sorts them in ascending

0 commit comments

Comments
 (0)