Czy istnieje wbudowany numpy, aby odrzucić wartości odstające z listy

Czy istnieje wbudowany numpy, aby zrobić coś takiego? To znaczy, zrób listęd i zwróć listęfiltered_d z usuniętymi elementami oddalonymi na podstawie pewnego zakładanego rozkładu punktówd.

import numpy as np

def reject_outliers(data):
    m = 2
    u = np.mean(data)
    s = np.std(data)
    filtered = [e for e in data if (u - 2 * s < e < u + 2 * s)]
    return filtered

>>> d = [2,4,5,1,6,5,40]
>>> filtered_d = reject_outliers(d)
>>> print filtered_d
[2,4,5,1,6,5]

Mówię „coś podobnego”, ponieważ funkcja może pozwolić na zmianę dystrybucji (poissona, gaussa itd.) I zmianę progów odstających w tych dystrybucjach (takich jakm Użyłem tutaj).

questionAnswers(7)

yourAnswerToTheQuestion