def second_max_value_bin(self, d):
    '\n        Return the feature_bin with the second largest value.\n        If there is one feature_bin only, return it. This is not a correct result,\n        however it is practical for plotting compatibility, and it will not\n        mistakenly be claimed as secondary maximum, by forcing its selectivity\n        to 0.0\n        '
    if (len(d.bins()) <= 1):
        return d.bins()[0]
    k = d.max_value_bin()
    d.pop(k)
    m = d.max_value_bin()
    d.restore(k)
    return m
Return the feature_bin with the second largest value.
If there is one feature_bin only, return it. This is not a correct result,
however it is practical for plotting compatibility, and it will not
mistakenly be claimed as secondary maximum, by forcing its selectivity
to 0.0
def second_max_value_bin(self, d):
    '\n        Return the feature_bin with the second largest value.\n        If there is one feature_bin only, return it. This is not a correct result,\n        however it is practical for plotting compatibility, and it will not\n        mistakenly be claimed as secondary maximum, by forcing its selectivity\n        to 0.0\n        '
    if (len(d.bins()) <= 1):
        return d.bins()[0]
    k = d.max_value_bin()
    d.pop(k)
    m = d.max_value_bin()
    d.restore(k)
    return m