https://github.com/numpy/numpy/issues/4701

def asscalar(a):
    """ https://github.com/numpy/numpy/issues/4701 """
    # Do we want to check that the value is numeric?
    #if   isinstance(value, (int, long, float)): return value
    try:
        return np.asscalar(a)
    except AttributeError as e:
        return np.asscalar(np.asarray(a))