def equi_width()

in rules/predicate.py [0:0]


def equi_width(values: Set, num_bins: int):
    values = set(values)
    sorted_set = sorted(values)
    min_val = sorted_set[0]
    max_val = sorted_set[len(sorted_set) - 1]
    val_range = max_val - min_val

    cutoffs = []
    inc = val_range / num_bins
    inc = int(inc) + 1

    for i in range(min(num_bins, max_val)):
        cutoffs.append(i * inc)

    return cutoffs