如果没有分布适合我的数据集,我该怎么办?

机器算法验证 r 分布 配件
2022-04-09 18:49:07

我需要知道什么概率分布代表我的数据集的一个变量。我在 R 中尝试了一些工具,例如 rriskDistribution 或 fitdistrplus 并且没有找到结果。大小约为26000。

这似乎是正常的,但我进行了一些测试并失败了。我给你举几个例子:

在此处输入图像描述

在此处输入图像描述

]在此处输入图像描述

在此处输入图像描述

]

3个回答

如果您有 26K 数据,则对给定分布的任何测试都将失败。因为对于这么多数据,测试可以检测到微小的差异并报告它不是来自那个分布。

我强烈建议您阅读这些帖子

大型数据集不适合假设检验吗?

正态性测试“基本上没用”吗?


数据不是来自教科书中的任何分布是很常见的。但我们仍然可以用它做很多事情。

例如,我们可以使用混合高斯模型拟合数据。


此外,您的数据分布似乎太好了(来自正态分布),可能来自某些模拟而不是来自现实世界。我建议做以下事情:从正态分布中抽取 26K 样本并运行假设检验和所有图表以查看结果。这是您的情况发生的概率。

您可以使用 Mathematica 的 FindDistribution 命令,但上面的人说,有这么多数据,您不太可能看到任何数据正常的测试报告是绝对正确的。但是,FindDistribution 几乎可以肯定会返回一个或多个非常适合的(混合)分布。我遇到了类似的问题,并使用 Tukey's Fences (Wikipedia) 确定我非常大的数据集中约有 18% 是异常值。我花了几个月的断断续续的反思和阅读来弄清楚异常值的来源。我建议您花费任何时间来开发一个准确的心理和/或图形模型,了解过程中发生的事情,以便您可以用理论解释过程中发生的所有事情,包括异常值。

你在这里只有两个选择:

1.创建适合分布的数据库。!2.划分您的数据库(希望它适合)并同时运行它们,然后根据您的要求合并