我正在开发一个应用程序,它有一个模块,需要根据一组以前的销售排名数据来定义如果在亚马逊上列出的商品将会卖出的可能性。如果你不熟悉亚马逊销售排名,它本质上是一个定义给亚马逊上所有商品的数字,它将该商品当前看到的之前的销售额相对于该类别中的所有其他商品进行排名。这是一个专有数字,但它本质上意味着销售排名#1目前在Amazon.com上销售最可能的副本,而销售排名1,000,000意味着还有999999个其他商品销售更多副本。
我有一个数据集,其中包括之前几个月的销售排名;每天一个:
$previousranks = array(
array('1/4/2010',567),
array('1/5/2010',674),
array('1/6/2010',505),
array('1/6/2010',343),
array('1/6/2010',578),
array('1/6/2010',789),
array('1/6/2010',1012),
);我还拿到了当前的销售排名进行比较。我想知道的是,这个项目是否处于需求图的“低谷”。我指的是“低谷”,如果你在X-Y轴上绘制这些排名,日期为X轴,销售排名为Y轴。我需要这个函数来决定它是否在过去的历史中处于低销售行列中,如果这有任何意义的话。
编辑:例如,从上面的数组中,我需要知道当前的销售排名是否在505和578之间。那就是“低谷”。我不太理解的是如何定义“低点”,因为范围不会一直是一样的。
发布于 2012-06-25 14:43:28
我希望,我理解了你的问题。您想要确定该商品的销售排名是否曾经高于当前销售排名(=较低的销售金额)?
您可以按销售排名的降序对数组进行排序。然后将第一个数组条目(具有最高销售排名)与您当前的销售排名进行比较。
要对多维数组进行排序(在本例中,按过去的销售排名降序),请使用usort,您可以在其中定义自己的比较函数:
function mySort($a, $b)
{
return $b[1] - $a[1];
}
usort($previousranks, 'mySort');
if($currentrank > $previousranks[0][1])
// current sales rank highest, do somethinghttps://stackoverflow.com/questions/11180502
复制相似问题