Dingdong-Inc/FreshRetailNet-50K

Dataset

24

stars

7

commits

3

linked in READMEs

Jan 9, 2026

updated

censored-demand
fresh-retail
hourly-stock-status

README

FreshRetailNet-50K

Dataset Overview

FreshRetailNet-50K is the first large-scale benchmark for censored demand estimation in the fresh retail domain, incorporating approximately 20% organically occurring stockout data. It comprises 50,000 store-product 90-day time series of detailed hourly sales data from 898 stores in 18 major cities, encompassing 865 perishable SKUs with meticulous stockout event annotations. The hourly stock status records unique to this dataset, combined with rich contextual covariates including promotional discounts, precipitation, and other temporal features, enable innovative research beyond existing solutions.

  • Technical Report - Discover the methodology and technical details behind FreshRetailNet-50K.
  • Github Repo - Access the complete pipeline used to train and evaluate.

This dataset is ready for commercial/non-commercial use.

Data Fields

FieldTypeDescription
city_idint64The encoded city id
store_idint64The encoded store id
management_group_idint64The encoded management group id
first_category_idint64The encoded first category id
second_category_idint64The encoded second category id
third_category_idint64The encoded third category id
product_idint64The encoded product id
dtstringThe date
sale_amountfloat64The daily sales amount after global normalization (Multiplied by a specific coefficient)
hours_saleSequence(float64)The hourly sales amount after global normalization (Multiplied by a specific coefficient)
stock_hour6_22_cntint32The number of out-of-stock hours between 6:00 and 22:00
hours_stock_statusSequence(int32)The hourly out-of-stock status
discountfloat64The discount rate (1.0 means no discount, 0.9 means 10% off)
holiday_flagint32Holiday indicator
activity_flagint32Activity indicator
precptfloat64The total precipitation
avg_temperaturefloat64The average temperature
avg_humidityfloat64The average humidity
avg_wind_levelfloat64The average wind force

Hierarchical structure

  • warehouse: city_id > store_id
  • product category: management_group_id > first_category_id > second_category_id > third_category_id > product_id

How to use it

You can load the dataset with the following lines of code.

from datasets import load_dataset
dataset = load_dataset("Dingdong-Inc/FreshRetailNet-50K")
print(dataset)
DatasetDict({
    train: Dataset({
        features: ['city_id', 'store_id', 'management_group_id', 'first_category_id', 'second_category_id', 'third_category_id', 'product_id', 'dt', 'sale_amount', 'hours_sale', 'stock_hour6_22_cnt', 'hours_stock_status', 'discount', 'holiday_flag', 'activity_flag', 'precpt', 'avg_temperature', 'avg_humidity', 'avg_wind_level'],
        num_rows: 4500000
    })
    eval: Dataset({
        features: ['city_id', 'store_id', 'management_group_id', 'first_category_id', 'second_category_id', 'third_category_id', 'product_id', 'dt', 'sale_amount', 'hours_sale', 'stock_hour6_22_cnt', 'hours_stock_status', 'discount', 'holiday_flag', 'activity_flag', 'precpt', 'avg_temperature', 'avg_humidity', 'avg_wind_level'],
        num_rows: 350000
    })
})

License/Terms of Use

This dataset is licensed under the Creative Commons Attribution 4.0 International License (CC BY 4.0) available at https://creativecommons.org/licenses/by/4.0/legalcode.

Data Developer: Dingdong-Inc

Use Case:

Developers researching latent demand recovery and demand forecasting techniques.

Release Date:

05/08/2025

Data Version

1.0 (05/08/2025)

Intended use

The FreshRetailNet-50K Dataset is intended to be freely used by the community to continue to improve latent demand recovery and demand forecasting techniques. However, for each dataset an user elects to use, the user is responsible for checking if the dataset license is fit for the intended purpose.

Citation

If you find the data useful, please cite:

@article{2025freshretailnet-50k,
      title={FreshRetailNet-50K: A Stockout-Annotated Censored Demand Dataset for Latent Demand Recovery and Forecasting in Fresh Retail},
      author={Yangyang Wang, Jiawei Gu, Li Long, Xin Li, Li Shen, Zhouyu Fu, Xiangjun Zhou, Xu Jiang},
      year={2025},
      eprint={2505.16319},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2505.16319},
}

Contributors

JarvisGu

7 commits

Dingdong-Inc/FreshRetailNet-50K

Dataset

24

stars

7

commits

3

linked in READMEs

Jan 9, 2026

updated

censored-demand
fresh-retail
hourly-stock-status

README

FreshRetailNet-50K

Dataset Overview

FreshRetailNet-50K is the first large-scale benchmark for censored demand estimation in the fresh retail domain, incorporating approximately 20% organically occurring stockout data. It comprises 50,000 store-product 90-day time series of detailed hourly sales data from 898 stores in 18 major cities, encompassing 865 perishable SKUs with meticulous stockout event annotations. The hourly stock status records unique to this dataset, combined with rich contextual covariates including promotional discounts, precipitation, and other temporal features, enable innovative research beyond existing solutions.

  • Technical Report - Discover the methodology and technical details behind FreshRetailNet-50K.
  • Github Repo - Access the complete pipeline used to train and evaluate.

This dataset is ready for commercial/non-commercial use.

Data Fields

FieldTypeDescription
city_idint64The encoded city id
store_idint64The encoded store id
management_group_idint64The encoded management group id
first_category_idint64The encoded first category id
second_category_idint64The encoded second category id
third_category_idint64The encoded third category id
product_idint64The encoded product id
dtstringThe date
sale_amountfloat64The daily sales amount after global normalization (Multiplied by a specific coefficient)
hours_saleSequence(float64)The hourly sales amount after global normalization (Multiplied by a specific coefficient)
stock_hour6_22_cntint32The number of out-of-stock hours between 6:00 and 22:00
hours_stock_statusSequence(int32)The hourly out-of-stock status
discountfloat64The discount rate (1.0 means no discount, 0.9 means 10% off)
holiday_flagint32Holiday indicator
activity_flagint32Activity indicator
precptfloat64The total precipitation
avg_temperaturefloat64The average temperature
avg_humidityfloat64The average humidity
avg_wind_levelfloat64The average wind force

Hierarchical structure

  • warehouse: city_id > store_id
  • product category: management_group_id > first_category_id > second_category_id > third_category_id > product_id

How to use it

You can load the dataset with the following lines of code.

from datasets import load_dataset
dataset = load_dataset("Dingdong-Inc/FreshRetailNet-50K")
print(dataset)
DatasetDict({
    train: Dataset({
        features: ['city_id', 'store_id', 'management_group_id', 'first_category_id', 'second_category_id', 'third_category_id', 'product_id', 'dt', 'sale_amount', 'hours_sale', 'stock_hour6_22_cnt', 'hours_stock_status', 'discount', 'holiday_flag', 'activity_flag', 'precpt', 'avg_temperature', 'avg_humidity', 'avg_wind_level'],
        num_rows: 4500000
    })
    eval: Dataset({
        features: ['city_id', 'store_id', 'management_group_id', 'first_category_id', 'second_category_id', 'third_category_id', 'product_id', 'dt', 'sale_amount', 'hours_sale', 'stock_hour6_22_cnt', 'hours_stock_status', 'discount', 'holiday_flag', 'activity_flag', 'precpt', 'avg_temperature', 'avg_humidity', 'avg_wind_level'],
        num_rows: 350000
    })
})

License/Terms of Use

This dataset is licensed under the Creative Commons Attribution 4.0 International License (CC BY 4.0) available at https://creativecommons.org/licenses/by/4.0/legalcode.

Data Developer: Dingdong-Inc

Use Case:

Developers researching latent demand recovery and demand forecasting techniques.

Release Date:

05/08/2025

Data Version

1.0 (05/08/2025)

Intended use

The FreshRetailNet-50K Dataset is intended to be freely used by the community to continue to improve latent demand recovery and demand forecasting techniques. However, for each dataset an user elects to use, the user is responsible for checking if the dataset license is fit for the intended purpose.

Citation

If you find the data useful, please cite:

@article{2025freshretailnet-50k,
      title={FreshRetailNet-50K: A Stockout-Annotated Censored Demand Dataset for Latent Demand Recovery and Forecasting in Fresh Retail},
      author={Yangyang Wang, Jiawei Gu, Li Long, Xin Li, Li Shen, Zhouyu Fu, Xiangjun Zhou, Xu Jiang},
      year={2025},
      eprint={2505.16319},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2505.16319},
}

Contributors

JarvisGu

7 commits