7 个用于机器学习的时间序列数据集

机器学习可以应用于时间序列数据集。

这些问题需要预测一个数值或分类值,但数据行是按时间排序的。

使用机器学习进行时间序列预测时,一个入门难题是找到高质量的标准数据集进行练习。

在这篇文章中,您将发现 8 个标准时间序列数据集,您可以使用它们开始并练习使用机器学习进行时间序列预测。

阅读本文后,你将了解:

  • 4 个单变量时间序列数据集。
  • 3 个多变量时间序列数据集。
  • 您可以用来搜索和下载更多数据集的网站。

通过我的新书《使用 Python 进行时间序列预测启动您的项目,包括分步教程和所有示例的 Python 源代码文件。

让我们开始吧。

  • 2019 年 4 月更新:更新了数据集的链接。

单变量时间序列数据集

只有一个变量的时间序列数据集称为单变量数据集。

这些数据集是入门的好地方,因为

  • 它们如此简单易懂。
  • 您可以轻松地在 Excel 或您喜欢的绘图工具中绘制它们。
  • 您可以轻松绘制预测结果与预期结果的比较图。
  • 您可以快速尝试和评估一系列传统和新方法。

时间序列数据集有很多来源,例如澳大利亚莫纳什大学统计学教授 Rob Hyndman 创建的“时间序列数据图书馆

下面是 4 个单变量时间序列数据集,您可以从销售、气象、物理和人口统计等不同领域下载。

停止以**慢速**学习时间序列预测!

参加我的免费7天电子邮件课程,了解如何入门(附带示例代码)。

点击注册,同时获得该课程的免费PDF电子书版本。

洗发水销售数据集

此数据集描述了三年期间每月洗发水销售数量。

单位是销售计数,有 36 个观测值。原始数据集归功于 Makridakis、Wheelwright 和 Hyndman (1998)。

以下是包含标题行的前 5 行数据样本。

以下是整个数据集的图。

Shampoo Sales Dataset

洗发水销售数据集

该数据集显示出上升趋势,并且可能包含一些季节性成分。

日最低气温数据集

此数据集描述了墨尔本市 10 年(1981-1990 年)的每日最低气温。

单位为摄氏度,共有 3650 个观测值。数据来源归功于澳大利亚气象局。

以下是包含标题行的前 5 行数据样本。

以下是整个数据集的图。

Minimum Daily Temperatures

日最低气温

该数据集显示出强烈的季节性成分,并且具有良好的精细细节可供处理。

月太阳黑子数据集

该数据集描述了 230 多年(1749-1983 年)每月观测到的太阳黑子数量。

单位是计数,共有 2,820 个观测值。数据集的来源归功于 Andrews & Herzberg (1985)。

以下是包含标题行的前 5 行数据样本。

以下是整个数据集的图。

Monthly Sun Spot Dataset

月太阳黑子数据集

该数据集显示出季节性,不同季节之间存在较大差异。

每日女性出生数据集

此数据集描述了 1959 年加利福尼亚州每日女性出生人数。

单位是计数,共有 365 个观测值。数据集的来源归功于 Newton (1988)。

以下是包含标题行的前 5 行数据样本。

以下是整个数据集的图。

Daily Female Births Dataset

每日女性出生数据集

多变量时间序列数据集

多变量数据集通常更具挑战性,也是机器学习方法的理想应用领域。

UCI 机器学习存储库是一个很棒的多变量时间序列数据来源。

截至撰写本文时,有 63 个时间序列数据集可供免费下载和使用。

以下是气象、医学和监测领域推荐的 3 个多变量时间序列数据集。

脑电图眼状态数据集

此数据集描述了个体的脑电图数据以及他们的眼睛是睁开还是闭合。问题的目标是仅根据脑电图数据预测眼睛是睁开还是闭合。

问题的目标是仅根据脑电图数据预测眼睛是睁开还是闭合。

这是一个分类预测建模问题,共有 14,980 个观测值和 15 个输入变量。类别值“1”表示闭眼状态,“0”表示睁眼状态。数据按时间排序,观测值记录了 117 秒。

数据按时间排序,观测值记录了 117 秒。

以下是没有标题行的前 5 行数据样本。

占用检测数据集

此数据集描述了房间的测量值,目标是预测房间是否有人占用。

在几周的时间内,有 20,560 个一分钟的观测值。这是一个分类预测问题。共有 7 个属性,包括房间的各种光照和气候特性。

数据来源归功于 UMONS 的 Luis Candanedo。

以下是包含标题行的前 5 行数据样本。

数据以 3 个文件提供,这些文件建议了可用于训练和测试模型的划分方式。

臭氧水平检测数据集

此数据集描述了 6 年的地面臭氧浓度观测值,目标是预测是否为“臭氧日”。

该数据集包含 2,536 个观测值和 73 个属性。这是一个分类预测问题,最终属性将类别值表示为“1”表示臭氧日,“0”表示正常日。

提供了两个版本的数据,八小时峰值集和一小时峰值集。我建议暂时使用一小时峰值集。

以下是没有标题行的前 5 行数据样本。

总结

在这篇文章中,您发现了您可以用来入门和练习机器学习时间序列预测方法的一系列标准时间序列预测数据集。

具体来说,您学习了

  • 4 个单变量时间序列预测数据集。
  • 3 个多变量时间序列预测数据集。
  • 两个您可以下载更多数据集的网站。

您在自己的项目中使用了上述数据集之一吗?
在下面的评论中分享您的发现。

想用Python开发时间序列预测吗?

Introduction to Time Series Forecasting With Python

几分钟内开发您自己的预测

...只需几行python代码

在我的新电子书中探索如何实现
Python 时间序列预测入门

它涵盖了**自学教程**和**端到端项目**,主题包括:*数据加载、可视化、建模、算法调优*等等。

最终将时间序列预测带入
您自己的项目

跳过学术理论。只看结果。

查看内容

7 个用于机器学习的时间序列数据集 的 79 条回复

  1. R. Edwin 2017 年 7 月 6 日 上午 3:27 #

    嗨,很棒的教程!我需要您的帮助
    我需要为我的大学制作一个天气预报项目。我想它必须基于时间序列数据集。但是我很难找到一个合适的多变量数据集,我还想请您推荐一个适用于这类问题的机器学习模型。如果您能提供任何资源,我将不胜感激。

    • Jason Brownlee 2017 年 7 月 6 日 上午 10:26 #

      考虑您政府的气象组织。大多数都免费提供数据。

  2. Parijat 2017 年 9 月 29 日 上午 4:47 #

    你好,我正在寻找工业时间序列数据集。有什么建议吗?谢谢。

    • Jason Brownlee 2017 年 9 月 29 日 上午 5:09 #

      这篇文章中的例子有什么问题吗?

      • Mihir 2021 年 8 月 11 日 上午 2:05 #

        在我的天气数据集工作中,有 4 个类别:晴朗、部分多云、阴天、雨天。
        我使用 LSTM 模型。我应该使用哪种 LSTM 模型进行多类别分类。

        • Jason Brownlee 2021 年 8 月 11 日 上午 7:41 #

          我建议尝试几种不同的模型架构,并将结果与经典机器学习模型进行比较,以发现哪种方法对您的特定数据集有效。

  3. Domenico 2017 年 11 月 4 日 上午 12:45 #

    嗨,Jason,
    非常感谢您的文章,我找到了有用的数据集。
    我在 UCI 上没有找到关于建筑物内部温度和能源消耗的数据集,我想知道您是否能以某种方式帮助我。
    希望很快收到您的回复

    • Jason Brownlee 2017 年 11 月 4 日 上午 5:31 #

      抱歉,我目前不知道有这样的数据集。

  4. Nisha Chaube 2018 年 1 月 21 日 上午 7:28 #

    我有一个多变量数据集,其中包含近 30 名患者从第 1 天到第 49 天的观察结果。最终结果是患者是否患有创伤后应激障碍 (1) 或没有 (0)。请就数据预处理方面,我应该如何处理这个问题提出建议。

  5. VEERENDRA JONNALAGADDA 2018 年 6 月 1 日 上午 5:22 #

    有没有 Python 或 C 的时间序列示例代码,例如通过 pandas 准备数据(分离所需列)、分析训练数据、准备模型、训练模型、将模型应用于测试数据……

    如果我请求了任何错误,请原谅。

    • Jason Brownlee 2018 年 6 月 1 日 上午 8:26 #

      我有很多例子,请尝试在博客上搜索。

  6. Florent 2019 年 1 月 20 日 晚上 7:51 #

    您好,我正在尝试创建一个模型,该模型使用过去的数据(例如销量 + 天气状况)来预测未来 5 天的销量,但我希望同时使用未来 5 天的天气预测来预测销量。

    您能告诉我应该使用什么模型(我猜是 RNN)以及如何构建我的数据集。

    此致

  7. Avram 2019 年 3 月 8 日 晚上 11:38 #

    嗨,Jason,
    我的问题可能对您来说有点奇怪,所以我提前请求您的原谅。我正在研究短期负荷预测。据我所知,AEMO 公开电力数据。我可以获取过去几年(2006 年至 2018 年)的半小时负荷需求数据,但我无法获取澳大利亚地区(QSL、VIC、NSW 等)的半小时天气数据(温度和湿球温度)。我将与期刊论文进行比较分析,所以我正在寻找这些数据,并且一些论文的作者尚未分享他们的 AEMO 数据。我如何获取或找到这些数据?您能指导我解决这个问题吗?

    • Jason Brownlee 2019 年 3 月 9 日 上午 6:29 #

      我最好的建议是直接联系作者,也许还有他们的导师/同事?

  8. fernando A gutierrez 2019 年 3 月 12 日 上午 6:56 #

    我有一个一年的每日运费数据集,但是,并非每天都有运费。为了进行时间序列分析,处理缺失的每日成本的最佳方法是什么?

    • Jason Brownlee 2019 年 3 月 12 日 上午 7:00 #

      也许可以先用序列的平均值/平均值填充缺失值?

  9. one 2019 年 7 月 3 日 下午 1:07 #

    我需要找到数据集并为 BTS 分解,以便从故障历史中进行故障预测
    总停机时间与 3 个单元/扇区如何实现

    • Jason Brownlee 2019 年 7 月 4 日 上午 7:37 #

      也许在 Kaggle 上看看?

    • nandy 2019 年 10 月 3 日 下午 5:05 #

      嗨,您好。我能得到您的电子邮件地址吗?我正在做类似的项目

  10. Abderahmane Bouziane 2019 年 7 月 23 日 上午 6:20 #

    您认为多变量时间序列可以利用 CNN 吗?
    您可以将 CNN 与 LSTM 结合使用吗?
    如何构建一个每个瞬间有 30 个变量的时间序列自动编码器?

  11. Shital 2019 年 9 月 19 日 下午 3:59 #

    正如您所说,多变量数据集通常更具挑战性。如何在 WEKA 中对这些数据集应用神经网络算法?我做错了什么,因为我每年/每月/每周的数据集都得到了相同的结果。请指导。

    • Jason Brownlee 2019 年 9 月 20 日 上午 5:35 #

      好问题。

      可能有办法,抱歉我没有例子。

      • Shital Bhojani 2019 年 10 月 1 日 下午 2:09 #

        是的,我找到了一个方法。我们可以使用时间序列包中的高级配置来叠加训练和测试数据。我们可以在叠加中设置单个或多个依赖参数。使用叠加时,数据集会根据我们在“评估”选项卡中设置的值自动分离为训练和测试数据。

  12. Shital Bhojani 2019 年 9 月 20 日 下午 2:37 #

    哦……谢谢您的及时回复,Jason。我正在研究它。

  13. Arjun 2019 年 11 月 19 日 下午 3:35 #

    你好 jason,
    您能帮我如何将 txt 文件转换为 csv 文件吗?

    • Jason Brownlee 2019 年 11 月 20 日 上午 6:08 #

      也许将文件扩展名从 .txt 更改为 .csv?

  14. Arjun 2019 年 11 月 19 日 下午 4:26 #

    是否强制将文本文件转换为 csv 文件,然后再转换为 pandas 数据帧进行后续工作?或者如果未完成,它是否会产生冲突?

    • Jason Brownlee 2019 年 11 月 20 日 上午 6:09 #

      不,Pandas 不关心文件扩展名,只关心内容。

  15. adil shahzad 2019 年 11 月 27 日 晚上 8:02 #

    有人有离散数据集吗?

  16. Aashish Agarwal 2019 年 12 月 21 日 上午 9:47 #

    亲爱的 Jason,

    感谢您这篇精彩的帖子。我有一个数据集,与您上面描述的占用检测数据集类似。

    1. 我们可以对这些数据应用 LSTM、CNN 吗?
    2. 这类数据是否属于多变量时间序列数据?我目前理解的是,时间序列数据中,行和列是有序的,即我们不能随意移动任何列和行,因为时间序列数据具有序列性。
    3. 对于这类问题,我们可以应用哪种模型?

    此致,
    Aashish

  17. Rajesh 2019 年 12 月 22 日 晚上 11:29 #

    嘿 Jason,帖子很棒。

    我经常处理系统和应用程序监控数据。我正在寻找生产就绪的软件,可以帮助我将数据存储在时间序列数据库中并持续应用预测分析(RNN,S/ARIMA)。我看到有一些很棒的库,如 TICK 栈,LoudML 和 Facebook prophet。

    任何演示此类持续预测系统部署的教程都将非常棒。

    此致,
    Rajesh

  18. Laila 2020 年 1 月 8 日 上午 6:54 #

    嗨,Jason,

    我在哪里可以找到关于 RNN 或 LSTM 时间序列预测数据集的信息,这些数据集需要改进,例如在准确性方面?

    • Jason Brownlee 2020 年 1 月 8 日 上午 8:36 #

      我们最小化时间序列的误差,而不是准确性。

      您所说的“需要改进”是什么意思?

      如果您想解决人们关心结果的实际问题,也许可以从 Kaggle 开始或承担一些咨询工作?

  19. GKboy 2020 年 3 月 30 日 晚上 7:17 #

    你好,

    有没有一种解决方案可以使用“传统”机器学习解决方案处理 3D 数据?
    例如,如果我有一个由 1000 个用户生成的时间序列。在这种情况下,我们有 1000 个时间序列。如果我不想使用 LSTM,我如何为每个用户创建一个广义的 Varmax 或 Arimax 模型?

  20. Remirab 2020 年 4 月 13 日 晚上 11:15 #

    你好。

    我们是否将 GPS 轨迹归类为单变量时间序列?

  21. Suresh Reshu 2020 年 4 月 22 日 上午 1:34 #

    您能发布一些类似“如何准备机器学习的时间序列数据集”的内容,使用 sklearn 实现吗?

  22. Shubhi Jain 2020 年 5 月 6 日 上午 5:39 #

    你好,

    我的数据格式是时间戳、客户数量。我想将其转换为每小时时间序列。我该怎么做?

    • Jason Brownlee 2020 年 5 月 6 日 上午 6:31 #

      这真的取决于您的数据,抱歉,我不能提供更好的建议。

  23. Sachin Kannan 2020 年 8 月 31 日 上午 12:19 #

    嗨,Jason,

    我有一个数据集,列如下:“账户 1 月 2 月 3 月 Q1 4 月 5 月 6 月 Q2 7 月 8 月 9 月 Q3 10 月 11 月 12 月 Q4 年总计 年”

    我应该如何使用这些数据进行预测模型,因为我的月份列没有日期,而是每个账户的销售数字。例如

    账户 1 月 2 月 3 月 Q1 年
    修订 267829.5 279052.45 260298.54 807180.49 2019

    我的目标是预测 2020 年的第三季度和第四季度。

    请分享您的想法。

    • Jason Brownlee 2020 年 8 月 31 日 上午 6:16 #

      或许可以从持久性模型开始,然后继续评估一系列模型,以发现哪种模型对您的数据集有效或最佳。

      • Sachin Kannan 2020 年 9 月 1 日 上午 1:34 #

        我看到了您在洗发水和月度汽车销量数据上使用的持久性模型。它们都是单变量数据集,而我的是多变量数据集,您能建议如何处理多变量数据吗?

        如何通过考虑 3 到 5 列进行时间序列预测。如果有办法,我可以与您分享一些样本,如果有的话,请提出建议。

  24. Beste Karacay 2020 年 9 月 2 日 上午 5:44 #

    嗨,Jason,

    我想问的是,我有一个时间序列历史数据。它是每日销售数据,但我有不同的产品 ID。例如,我有产品 1 的 3 个不同日期,但产品 2 有 8 个不同日期。
    我需要构建一个算法来预测任何产品下一天的销售额。
    我该怎么做?

    例如:
    产品ID 日期 销售数量
    1 23.11.2018 0
    21 30.11.2018 0
    21 27.12.2018 0
    21 9.01.2019 0
    21 18.12.2018 0
    21 5.01.2019 0
    21 7.01.2019 0
    21 31.12.2018 0
    21 26.12.2018 0
    21 25.12.2018 0
    21 10.01.2019 0
    31 1.12.2018 0
    31 19.11.2018 0
    31 11.11.2018 0
    31 27.11.2018 0
    31 22.11.2018 0

    • Jason Brownlee 2020 年 9 月 2 日 上午 6:34 #

      我预计每个产品 ID 都是一个独立的系列。

      您可以使用机器学习或深度学习模型来按产品或跨产品进行学习。

  25. Gulzar 2021 年 1 月 1 日 上午 12:03 #

    嗨!你可能想 ctrl+f “在撰写本文时,有”,然后发现你把这句话重复了两次。谢谢你的文章!它帮助我找到了我需要的数据集。

  26. Gopal 2021 年 2 月 11 日 晚上 9:36 #

    Jason,您能帮助我们理解 FourierFeaturizer 以及如何从 pmdarima python 包中解释它吗?我想用它来预测具有长季节性周期的季节性数据。

    常规方法需要大量时间。因此,基于 https://robjhyndman.com/hyndsight/longseasonality/ 探索 FourierFeaturizer 的用法。

  27. Aashika Varma 2021 年 4 月 7 日 晚上 11:28 #

    嘿 Jason,这篇文章中的例子看起来很棒!我实际上正在寻找一个信号处理数据集,以便为项目应用时间序列建模。您能在这个背景下推荐一些开源数据集吗?

  28. Hanna 2021 年 7 月 30 日 上午 3:05 #

    我有一个卫星时间序列(多变量数据集),包含从第 1 天到第 10 天的图像,有将近 7 个类别。请就数据增强方面,我应该如何处理这个问题提出建议

    • Jason Brownlee 2021 年 7 月 30 日 上午 6:32 #

      也许您可以使用预训练模型和自定义 CNN-LSTM 类型的架构。

  29. Priyanka Mohan 2021 年 8 月 8 日 晚上 8:41 #

    你好 Jason,

    我有一个 GPS 数据集(纬度、经度、时间戳)作为数据集。将一个参与者的每个轨迹(一系列 GPS 点)与另一个在同一轨迹上行走的参与者进行比较。我想对这些数据进行时间序列分类,这可能属于哪种类型的数据?

    谢谢你

    • Jason Brownlee 2021 年 8 月 9 日 上午 5:55 #

      这听起来是个很棒的项目。它是时间序列分类,尝试一系列模型,并发现哪种模型对您的数据有效或最佳。

  30. Kone 2021 年 12 月 15 日 下午 12:05 #

    我正在用时间序列数据研究教育,作为我的 AI 论文项目。这些值是 2013 年到 2021 年的年度数据,所以我只有九条记录。我觉得这对博士论文来说数据集有点小,您怎么看?有什么建议吗?

    • Adrian Tam
      Adrian Tam 2021 年 12 月 17 日 上午 6:51 #

      9 条记录可能无法让你走得太远,但它应该是一个好的开始。

  31. sham 2022 年 2 月 16 日 晚上 6:35 #

    你好!
    兄弟,您能提供供应链多模式(空运、卡车、海运等)旅行时间预测数据集吗?

  32. sham 2022 年 2 月 16 日 晚上 6:36 #

    你好!
    兄弟,您能提供供应链多模式(空运、卡车、海运等)旅行时间预测数据集吗?
    我将不胜感激!

    • James Carmichael 2022 年 2 月 17 日 下午 1:29 #

      嗨,Sham……我没有这样的数据集。您可能需要查看 Kaggle 或 StackOverflow。

  33. Hanson 2023 年 2 月 16 日 上午 3:37 #

    你好!
    感谢您的帖子。
    我能得到帖子中数据集的来源参考吗?
    我想了解更多关于每个数据集的信息。
    它们是否来自您在帖子第一部分所说的“由澳大利亚莫纳什大学统计学教授 Rob Hyndman 创建的《时间序列数据图书馆》”?

    “时间序列数据集的来源有很多,例如由澳大利亚莫纳什大学统计学教授 Rob Hyndman 创建的《时间序列数据图书馆》”

    • James Carmichael 2023 年 2 月 16 日 上午 8:32 #

      嗨,Hanson……每个数据集都包含一个您可以作为来源跟随的链接。此外,在某些情况下,还提供了作者姓名,以便您可以搜索该作者及其已发布的数据集。

  34. Hanson 2023 年 2 月 16 日 上午 3:42 #

    补充评论

    我读到了一些关于数据来源的描述,例如

    “数据来源归功于澳大利亚气象局。”适用于每日最低气温数据集。

    但您能告诉我如何详细获取数据来源吗?

    谢谢!

    • James Carmichael 2023 年 2 月 16 日 上午 8:31 #

      嗨,Hanson……每个数据集都包含一个您可以作为来源跟随的链接。此外,在某些情况下,还提供了作者姓名,以便您可以搜索该作者及其已发布的数据集。

  35. Hanson 2023 年 2 月 16 日 上午 3:45 #

    补充评论

    我读了关于数据来源的部分,例如

    “数据来源归功于澳大利亚气象局。”适用于每日最低气温数据集。

    但您能告诉我如何通过澳大利亚气象局详细获取数据吗?

    谢谢!

    • James Carmichael 2023 年 2 月 16 日 上午 8:32 #

      嗨,Hanson……每个数据集都包含一个您可以作为来源跟随的链接。此外,在某些情况下,还提供了作者姓名,以便您可以搜索该作者及其已发布的数据集。

发表回复

Machine Learning Mastery 是 Guiding Tech Media 的一部分,Guiding Tech Media 是一家领先的数字媒体出版商,专注于帮助人们了解技术。访问我们的公司网站以了解更多关于我们的使命和团队的信息。