3

我有几组大数据集,用于创建非标准概率分布(numpy.histogram用于对数据进行分箱,并使用scipy.interpolate'sinterp1d函数对结果曲线进行插值)。我还创建了一个函数,可以使用scipy.stats包从这些自定义 PDF 中采样。

我的目标是查看我的样本大小的变化如何改变它们来自的分布以及其他 PDF 的拟合优度,并确定需要多大的样本才能完全确定它是否来自一个或另一个我的自定义 PDF。

为此,我收集到我需要使用某种非参数统计分析,即查看是否从提供的概率分布中提取了一组数据。做了一些研究,Anderson-Darling 检验似乎对此非常理想,但是它在 python ( scipy.stats.anderson) 中的实现似乎仅可用于预设概率分布,例如正态、指数等。

所以我的问题是:考虑到我的许多非标准 PDF(或必要时的 CDF,或者我用来创建它们的数据),在 Python 中计算一组样本数据与每个模型的匹配程度的最佳方法是什么?如果是 Anderson-Darling 测试,是否有某种方法可以定义自定义 PDF 进行测试?

谢谢。任何帮助深表感谢。

4

1 回答 1

1

(1)“它是否来自分布 X”通常是一个可以先验地回答的问题,如果有的话;对它的统计测试只会告诉你“我有一个大样本/不是一个大样本”,这可能是真的,但不太有用。如果您试图将新数据分类为一种或另一种分布,我的建议是将其视为一个分类问题并使用您构建的 pdf 来计算 p(class | data) = p(data | class) p(class) / p(data) 其中关键部分 p(data | class) 是您的直方图。也许您可以更多地谈谈您的问题域。

(2) 您可以应用 Kolmogorov-Smirnov 检验,但如上所述,它确实没有意义。

于 2015-05-26T22:31:05.723 回答