Sample flow (attrition) — WP38
Snapshot 2026-11-01T17:38:30Z. Nothing is deleted; every step is a flag in data/interim/listings_clean.parquet.
| step | listings |
|---|---|
| DB product rows (all statuses all stores) | 465 388 |
| active = 1 and listing_status = 'published' | 390 108 |
| … of an enabled store with >= 1 published listing | 390 108 |
| … excluding store_kind = hors_mission | 390 074 |
| … keeping one representative per (store normalised title) and non-empty title | 370 828 |
| … excluding mirror domains of the same business (sibling stores non-representative) [ASSORTMENT SAMPLE] | 370 054 |
| … and CAD-priced store/listing | 369 325 |
| … and a positive listed price <= 50 000 CAD not on request [PRICE SAMPLE] | 359 612 |
Assortment sample diagnostics
text
{
"listings": 370054,
"stores": 1557,
"categories": 20,
"dup_in_store_listings_removed": 19245,
"share_autre": 0.1113,
"available_0_share": 0.1307,
"on_sale_share": 0.087,
"has_variants_share": 0.2782,
"sku_share": 0.7667,
"vendor_share": 0.7558
}Price-sample exclusions (from the assortment sample)
text
{
"non_cad_listing_or_store": 729,
"price_missing_or_on_request": 9635,
"price_zero": 0,
"price_gt_cap": 78
}Price quantiles in the price sample (CAD)
text
{
"0.001": 0.26,
"0.01": 1.5,
"0.1": 5.99,
"0.5": 24.99,
"0.9": 274.56,
"0.99": 3700.0,
"0.999": 18500.0
}Top-10 stores hold 37.1% of the assortment sample.