微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

子类化scipy.stats.rv_continuous

如何解决子类化scipy.stats.rv_continuous

我已经花了很大的力气和搜索来尝试将scipy.stats.rv_continuous子类化以生成Weibull概率分布(weibull_max)的新参数化,但是不知道该怎么做。我正在尝试将发行版设置为能够使用pdf,cdf,随机变量和拟合方法

我可以使用以下独立功能生成所需的pdf:

def weibull3P_pdf(x,shape,thres=0,loc=0,scale=1):
    return np.flip(scistats.weibull_max
                   .pdf(-x - thres,loc=loc,scale=scale))

一个人会猜到以下应该起作用:

class weibull3P_gen(scistats.rv_continuous):

    def _argcheck(self,c,k):
        return (c > 0) & (k < 0)

    def _get_support(self,k):
        return k,-k

    def _pdf(self,x,k):
        # Adjusted accordingly from weibull_max._pdf
        return c * pow(-x - k,c - 1) * np.exp(-pow(-x - k,c))


weibull3P = weibull3P_gen(name="weibull3P")

,但是pdf方法不会产生相同的结果。任何指针都欢迎。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。