The data contains historical loyalty transactions recorded across Sasol forecourt and convenience retail locations. Each row represents an individual line item within a transaction, linked to an anonymised loyalty customer.
Transactions may contain fuel purchases, convenience-store items, or both. Multiple rows can therefore belong to the same transaction, with the same TransactionId and LoyaltyCustomerNumber but different products or line-item sequences.
The training data is provided at transaction level, giving you historical purchase activity for loyalty customers during the training period. You will need to transform these transactions into useful customer-level features.
The test dataset is provided at customer level, with one row for each LoyaltyCustomerNumber (=ID) for whom you need to make predictions. Participants must use the historical transaction data available before the prediction cutoff to construct features for these customers. Because the split is time-based, your models must learn from past customer behaviour to predict what happens next, closely reflecting how the models could be used in a real-world setting.
Your task is to predict each test customer's outcomes during the future three-month period:
Join the largest network for
data scientists and AI builders