pandas मध्ये rows आणि columns कसे filter करायचे
Read this guide in: English · मराठी · हिंदी
Columns select करा, boolean mask बनवा, rows filter करा, मग sort. उदाहरण: Online shop rows — Mumbai 120 + Pune 70 = 190.
चला मित्रांनो! पूर्ण tables story लपवतात. Filters प्रकट करतात. आज select, boolean filter आणि sort — shop sales. फक्त उभ्या steps. समजलं का?
थोडक्यात उत्तर
उभा filter path:
- Select:
df[["city", "sales"]] - Mask:
mask = df["channel"] == "Online" - Filter:
online = df[mask].copy() - Sort:
online.sort_values("sales", ascending=False) - Check:
online["sales"].sum()→ sample वर 190. - Conditions
&/|आणि parentheses ने जोडा.
select → mask → filter → sort → verify sum
Language: English · मराठी · हिंदी
या guide आधी काय हवं?
- आधीच load केलेला DataFrame.
- Course: Selecting columns and rows.
Before आणि after
Before — full shop table; all rows total 260.
After — Online filter + sort; total 190.
Before: सगळ्या rows total 260. After: फक्त Online 190.
Sample shop table
| city | channel | sales |
|---|---|---|
| Mumbai | Online | 120 |
| Mumbai | Store | 40 |
| Pune | Online | 70 |
| Nashik | Store | 30 |
All-rows sum = 260. Online sum = 190.
Select columns
df[["city", "channel", "sales"]]
df["sales"] # Series
चुकीच्या columns plot करणं वेळ वाया घालवतं — आधी select.
Boolean filters
mask = df["channel"] == "Online"
online = df[mask].copy()
online["sales"].sum() # 190
Conditions जोडणं
df[(df["channel"] == "Online") & (df["sales"] >= 70)]
df[df["city"].isin(["Mumbai", "Pune"])]
Rules: Series मध्ये English and/or नाही — & / |; प्रत्येक test parentheses मध्ये; edit करायचं असेल तर .copy().
Sorting आणि top N
online.sort_values("sales", ascending=False)
online.nlargest(1, "sales") # Mumbai 120
Instagram-like उदाहरण
likes >= 70 filter करून descending sort — managers winners आधी पाहतात.
काय दिसेल
- Filter नंतर row count कमी.
- Index “गॅप” (0, 2…) — normal; स्वच्छ हवे तर
reset_index(drop=True). - Sums बदलतात — तोच मुद्दा.
Ravindra Bagale's Tip
Filter मराठी-English मध्ये मोठ्याने सांगा: “फक्त Online, मग sales sort.” बोलता येत नसेल तर आधी code लिहू नका. समजलं का?
Practice task
चार-row shop table वर:
- Store filter; sum 70.
- Online; sum 190.
- Online descending; पहिली city Mumbai.
- Mumbai किंवा Pune rows ठेवा.
Learn it properly
Related: groupby aggregation · Handle missing values
समजलं का? Select, boolean mask, filter, sort, 190 verify. आता पुढे जाऊया.
Frequently asked questions
loc vs just brackets?
Brackets are fine for simple column picks and masks. loc is clearer for label-based row+column work — both appear in the course.
Why .copy()?
Avoid SettingWithCopy surprises when you edit a filtered slice later.
How do I get top N?
sort_values then head(N), or nlargest on a column.
Filter on numbers?
df[df["sales"] >= 70] works the same way as text filters.
Multiple cities?
df[df["city"].isin(["Mumbai", "Pune"])]
Course links?
Selecting, boolean filters, sorting lessons in chapter 6.