diff --git a/scripts/common.py b/scripts/common.py index 8af2ad66aedd87d2d079b902adf538b8283a37b9..6e34d69e0a60422824a730492a4402708ae06591 100644 --- a/scripts/common.py +++ b/scripts/common.py @@ -624,6 +624,9 @@ def get_number_of_columns(filename, ks=range(2, 10)): right_boundaries.append(right_boundary) boundaries = left_boundaries + right_boundaries + num_unique_boundaries = len(set(boundaries)) + if num_unique_boundaries <= ks.start: + return num_unique_boundaries are_outliers = OneClassSVM().fit_predict(np.array(boundaries).reshape(-1, 1)) boundaries = [ boundary @@ -632,6 +635,8 @@ def get_number_of_columns(filename, ks=range(2, 10)): if is_outlier == 1 ] num_unique_boundaries = len(set(boundaries)) + if num_unique_boundaries <= ks.start: + return num_unique_boundaries X = np.array(boundaries).reshape(-1, 1) best_k, best_silhouette = 1, float('-inf') for k in ks: