为时间序列预测拟合曲线到数据点集

2 投票
1 回答
2295 浏览
提问于 2025-04-18 06:19

我现在有一组数据点(点击次数),这些数据是按时间顺序排列的。数据大概是这样的:

time   hits
20     200
32     439
57     512

我想知道怎么给这些数据拟合一条曲线,或者找到一个公式,这样我就可以预测未来的点。理想情况下,我想回答一个问题,比如“当时间是100的时候,会有多少次观看?”

谢谢你的帮助!

编辑:我到目前为止尝试过的:

我尝试了各种方法,包括:

  1. 使用sklearn创建逻辑回归(不过,数据没有特征)

  2. 使用scipy的optimize.curve_fit创建曲线拟合(但是,我没有适合数据的函数)

  3. 从UnivariateSpline创建一个函数,然后传给curve_fit(出现了一些问题,我没法确定是什么)

我想模拟内容何时会变得热门,所以我认为多项式或指数曲线是最理想的。

我之前尝试了@Bill提供的链接,但我没有适合数据的函数。你知道我该怎么找到一个吗?

编辑2:

这是大约两天的数据样本: 狐狸数据

这里是预期的趋势。

1 个回答

1

正如其他人所说,信息太少了,很难给出答案。

我建议你定义一些新的变量,比如时间、时间的平方(time*time)、时间的立方(time*time*time),然后用这些作为输入变量来训练一个线性回归模型。

我会先从这些开始,如果需要的话,再使用一些更复杂的东西,比如神经网络(不是在sklearn里)或者支持向量回归(SVR)。

希望这些能对你有所帮助。

撰写回答