【问题标题】:Is there a way to conduct the Anderson Darling test in Python using a custom distribution?有没有办法使用自定义分布在 Python 中进行 Anderson Darling 测试?
【发布时间】:2021-06-14 18:43:48
【问题描述】:

我正在对我拥有的一些数据使用 scipy.stats.anderson Anderson-Darling 测试,但我想将其与与我的数据相关的均匀分布进行比较,而不是 scipy 给出的预设选项像正态分布、指数分布等。我想比较的分布非常简单,实际上就是数组:

xtest = np.linspace(0, 180, len(x), endpoint=True)

x 是我的数据。有谁知道我是否有办法做到这一点?

提前致谢!

【问题讨论】:

    标签: python scipy.stats


    【解决方案1】:

    scipy 中的函数目前不支持均匀分布。不过看看代码 (https://github.com/scipy/scipy/blob/v1.6.1/scipy/stats/morestats.py#L1783)

        if dist == 'norm':
            ...
            critical = around(_Avals_norm / (1.0 + 4.0/N - 25.0/N/N), 3)
        elif dist == 'expon':
            ...
            critical = around(_Avals_expon / (1.0 + 0.6/N), 3)
        ...
        return AndersonResult(A2, critical, sig)
    

    它具有计算其支持的每个分布的critical 值的逻辑。

    如果您能够计算出均匀分布的critical 值,您可以自己计算AndersonResult

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-15
    • 2016-04-18
    • 2020-07-19
    • 2017-06-03
    • 2018-11-21
    • 1970-01-01
    • 2021-09-21
    • 2015-09-16
    相关资源
    最近更新 更多