使用python存储预测时间序列数据的方法



所以我想每天抓取一次天气预报表并存储结果以供将来分析。我想存储数据,但不知道如何存储。

数据示例:Forecast Table

我感兴趣的四个变量是风速,阵风,波高和波周期。

这是我第一个涉及时间序列数据的python项目,我对数据库相当陌生,所以请对我和ELI5轻松。

在我最近参加的Python For Everyone课程中,我学习了关系数据库和使用SQLlite。这里的主要思想基本上是有效地存储数据,并且永远不会存储相同的数据两次。然而,这些例子都不涉及时间序列数据。所以现在我不确定最好的方法是什么。

如果我为每个变量创建一个表,最后一个为日期创建一个表,我就会刮掉预测。然后,抓取的日期将作为主键。在本例中,风速等变量的第一列是刮痧日期,后面的列是时间戳的预测值。尽管与每天创建一个新表相比,这将使存储更高效,但仍存在一些问题。时间戳并不统一(见图,预报时间仅从凌晨3点到晚上9点)。此外,根据获取预报的时间,时间戳上的日期和时间值总是在变化,因此下一个时间戳并不总是在2小时内。

看到我每次抓取预测,我得到一个新的表,我应该创建一个新的数据库表,每次在sqlite?这似乎是一个相当基本的解决方案,我相信有更好的方法来存储数据。

你会怎么做?

总结我的评论:

您可能想要将来自新报废的预测数据附加到同一数据库表中的现有数据。

从每个新的网页剪贴,你将得到大约。40条新记录,具有相同的报废时间戳,但不同的预测时间戳。

。,这将是使用ID为主键并使用AUTOINCREMENT:

的表的列。
Wave
IDForecast_hoursWind_speedwind_gustWind_directionWave_periodwave_direction

最新更新