Я хочу установить асимметрию c Распределение Лапласа https://en.wikipedia.org/wiki/Asymmetric_Laplace_distribution для некоторых данных в Python. Я изучил документацию по SciPy, и, похоже, они не поддерживают ассиметричный дистрибутив Лапласа c.
Отлично, я просто сделаю свое! Или попробуйте, по крайней мере.
class ALD(scipy.stats.rv_continuous):
'''Asymmetric Laplace distribution'''
def _pdf(self, x, location, scaler, asym):
return coef * np.where(
x < location,
np.exp((scaler / asym) * (x - location)),
np.exp(-scaler * asym * (x - location))
)
Но при попытке подгонять некоторые данные к этому распределению (скажем, используя seaborn.distplot
с аргументом fit=
, который, кажется, работает для всех распределений SciPy), это не ' т работа.
У меня двоякий вопрос:
- Существует ли существующая реализация асимметрии c Лапласа, которая соответствует соглашению, подобному SciPy, которое я могу использовать?
- Если нет, каковы минимальные требования для моего «пользовательского дистрибутива», чтобы можно было вписать их в некоторые данные с
seaborn.distplot
?