Ravindra Bagale · Data Scienceसर्व coursesया course चे lessonsशोधाEnglish

Data Science · मराठी आवृत्ती

28.5 तीन-table path: orders → stores → riders

By Ravindra Bagale

या course चे सर्व chapters (py + ch)

हे का शिकायचं?

क्रम महत्त्वाचा. आधी orders→stores, मग riders. प्रत्येक hop नंतर shape.

हे काय आहे?

दो merges. मध्ये validate. शेवटी business columns निवडा.

कसं करायचं?

Step 1. orders→stores left.

Step 2. shape.

Step 3. →riders.

Step 4. Final columns.

उदाहरणं: copy करा आणि चालवा

उदाहरण A — Chain.

import pandas as pd

orders = pd.DataFrame({
    "order_id": ["BLK-1", "BLK-2", "BLK-3"],
    "store_id": ["PUN-01", "NSK-01", "PUN-01"],
    "rider_id": ["R-9", "R-2", "R-9"],
    "amount_inr": [100, 90, 80],
})
stores = pd.DataFrame({
    "store_id": ["PUN-01", "NSK-01"],
    "city": ["Pune", "Nashik"],
})
riders = pd.DataFrame({
    "rider_id": ["R-9", "R-2"],
    "rider_name": ["Salman", "Zoya"],
})

o_s = orders.merge(stores, on="store_id", how="left")
assert len(o_s) == len(orders)
o_sr = o_s.merge(riders, on="rider_id", how="left")
assert len(o_sr) == len(orders)
print(o_sr)

उदाहरण B — GMV by city and rider.

g = (
    o_sr.groupby(["city", "rider_name"], as_index=False)["amount_inr"]
    .sum()
    .sort_values("amount_inr", ascending=False)
)
print(g)

उदाहरण C — Stop if length jumps.

If len grows, halt and run the duplicate-key check — do not “fix with a chart”.