load_m5#

load_m5(extract_path=None, include_events=False, merged=True, test=False)[source]#

https://zenodo.org/records/12636070 获取 M5 数据集。

如果数据集尚未下载,则下载并提取。获取的数据集为标准 .csv 格式,并加载到 sktime 兼容的内存格式 (pd_multiindex_hier) 中。有关数据集的更多信息,包括其结构和内容,请参阅 Notes 部分。

参数:
extract_pathstr, 可选 (默认为None)

如果提供,路径应使用操作系统适当的路径分隔符(例如,Unix 系统使用斜杠 '/',Windows 使用反斜杠 '\')。如果提供了 extract_path

  • 检查所需文件是否存在于给定的 extract_path

  • 如果未找到文件,检查 extract_path 内是否存在目录“m5-forecasting-accuracy”。这在函数之前已使用相同路径运行过时很有用。

  • 如果该目录不存在,则下载并将数据提取到 extract_path 中的“m5-forecasting-accuracy”文件夹中。

  • 如果该目录存在,则使用现有目录的路径。

如果 extract_path 为 None
  • 检查模块级别内是否存在目录“m5-forecasting-accuracy”。

  • 如果该目录存在,则使用当前目录的路径。这在函数之前已运行过但未指定任何路径时很有用。

  • 如果该目录不存在,则下载并将数据提取到模块级别的“m5-forecasting-accuracy”文件夹中。

include_eventsbool, 可选 (默认为False)

如果为 True,结果数据集将包含与事件相关的附加列。包含这些列可以提供更丰富的数据集,可用于分析事件对销售的影响。如果为 False,数据集将排除这些列,提供更精简版本的数据。

mergedbool, 可选 (默认为True)

确定输出格式:- 如果为 True,函数返回一个合并的数据集。- 如果为 False,函数返回三个独立的数据集

sales_train_validationsell_pricescalendar

testbool, 可选 (默认为False)

加载数据集的一小部分,不包含事件,仅用于测试目的。标准用法不应使用此选项,但对运行测试的开发者可能有用。

返回:
pd.DataFrame 或 pd.DataFrame 元组
  • 如果 merged_datasetTrue
    datasktime类型 pd_multiindex_hier 的 pd.DataFrame

    包含时间序列的预处理 dataframe。

  • 如果 merged_datasetFalse,返回包含三个 dataframe 的元组

    sales_train_validation : sktime类型 pd_multiindex_hier 的 pd.DataFrame sell_prices : pd.DataFrame calander : pd.DataFrame

注意

数据集包含三个主要文件:- sales_train_validation.csv:每个产品和商店的每日销售数据 - sell_prices.csv:每个产品和商店的价格数据 - calendar.csv:包含事件的日历信息

dataframe 将包含具有以下级别的多重索引:- state_id - store_id - cat_id - dept_id - date

示例

>>> from sktime.datasets import load_m5  
>>> data = load_m5()  
>>> data.head()