1

我有一个名为 today_stats 的 MySql 表。它有 ID、日期和点击次数。我正在尝试创建一个脚本来获取值并尝试预测接下来 7 天的点击次数。我如何在 PHP 中预测它?

4

5 回答 5

2

此处描述的不同类型的曲线拟合: http ://en.wikipedia.org/wiki/Curve_fitting

另外:http ://www.qub.buffalo.edu/wiki/index.php/Curve_Fitting

于 2010-04-28T17:06:32.323 回答
1

您正在寻找的算法称为最小二乘

您需要做的是最小化从每个点到您将用来预测未来值的函数的总距离。为了使距离始终为正,计算的不是绝对值,而是该值的平方。差的平方和必须最小。通过定义构成该总和的函数、推导它、求解结果方程,您将找到函数的参数,这些参数将最接近过去的统计值。

Excel 之类的程序(也可能是 OpenOffice 电子表格)有一个内置函数可以为您执行此操作,使用多项式函数来定义相关性。

基本上,您应该将 Time 作为独立值,并将所有其他值作为描述值。

这被称为计量经济学,因为它在经济学中很普遍。这样,如果你有很多过去的统计数据,那么对第二天的预测就会非常准确(你也可以确定信任区间——可能发生的错误)。接下来的日子将越来越不准确。

如果您为一周中的每一天制作不同的模型,包括假期和特殊日子作为变量,您将获得更高的精度。

这是以数学方式预测未来价值的唯一正确方法。但是从这一切中产生了一个问题:它真的值得吗?

于 2010-04-28T21:08:42.967 回答
1

这与 PHP 关系不大,而与数学关系更大。计算此类数据的最简单方法是获取过去 X 周内某一天的平均流量。您不想提取所有数据,因为时尚和页面内容会发生变化。

因此,例如,获取上个月每天的平均流量。您可以通过将估算值与实际流量进行比较来判断估算值的准确性。如果它们根本不准确,请尝试计算(例如,更改您采样的时间段)。或者,您的估计偏离了可能是件好事:您的网站刚刚登上了《纽约时报》的头版!

干杯。

于 2010-04-28T16:59:02.313 回答
0

首先连接到数据库,然后检索 x 天前的数据。然后,您可以尝试制作一条最适合前几天的路线,然后使用它并扩展到未来。但根据应用程序的不同,最佳拟合线还不够好。

于 2010-04-28T16:53:16.400 回答
0

一种简单的方法是按天分组并平均每个值。这都可以在 SQL 中完成

于 2010-04-28T16:54:04.393 回答