这是一个很好的问题,我很喜欢仔细考虑...
假设您运行“Widget Rental”网站,并且在您的应用程序上,您希望允许潜在购买者根据价格对小部件进行分类。(从低到高或从高到低)。
每个小部件可以根据一年中的时间有不同的价格。当您获得“旺季”和“淡季”季节时,某些小部件将根据季节有数十种不同的价格。
然而,“小工具”的卖家特别调皮,他们意识到如果他们将小工具设置为一年中的某一天真的很贵,而且一年中的某一天也真的很便宜,那么他们很容易出现在低和高排序范围。
目前,我采用了一个非常天真的解决方案来计算 Widget 的“最低价格”,即lowest( N )
从数据集中获取值。
我想要的是获得一个小部件的“最低价格”,它准确地描绘了它可以租用的价格......并删除较低/较高波段的异常值。
看看这张图表......带有值......
X 轴 - 时间(每个重要间隔为一天)
Y 轴 - 价格
X轴是时间,Y轴是价格。现在,这包含一个正态分布,并且该数据集中没有任何真正的统计异常值。最低值和最高值之间的价格波动高达 200% 是很常见的。
但是,看看这第二张图表……它包含单日关税,只有 20 ēuros……
我玩过使用 Grubbs 测试,它似乎工作得很好。
重要的是我想得到一个“从价格”。也就是说,我希望能够说“你可以从 XXXX 租这个小部件”。因此,它应该反映整体的整体定价,并忽略明显的异常值。
如果您向我指出任何已经存在的方向,PHP 奖励积分。(但我很高兴自己用 PHP 编写代码)。