GroupBy, एग्रीगेशन और पिवट टेबल
groupby संक्रियाओं और पिवट टेबल से डेटा का सारांश बनाएँ।
GroupBy, एग्रीगेशन और पिवट टेबल, CoddyKit पर Python Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Python Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Python Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
groupby की मूल बातें
df.groupby("col") DataFrame को कॉलम के अद्वितीय मानों के आधार पर समूहों में बाँटता है। परिणाम प्राप्त करने के लिए इसके बाद कोई एग्रीगेशन जोड़ें।
import pandas as pd
df = pd.DataFrame({
"dept":["HR","IT","HR","IT","HR"],
"salary":[60,80,65,90,70]
})
print(df.groupby("dept")["salary"].mean())
# HR 65.0
# IT 85.0कई एग्रीगेशन फ़ंक्शन
एक साथ कई एग्रीगेशन फ़ंक्शन लागू करने के लिए agg() का उपयोग करें।
import pandas as pd
df = pd.DataFrame({"dept":["HR","IT","HR","IT"],"sal":[60,80,65,90]})
result = df.groupby("dept")["sal"].agg(["mean","max","count"])
print(result)नामित एग्रीगेशन
आउटपुट कॉलमों के नाम स्पष्ट रूप से देने के लिए agg() में कीवर्ड आर्ग्युमेंट का उपयोग करें (Pandas 0.25+).
import pandas as pd
df = pd.DataFrame({"dept":["HR","IT","HR","IT"],"sal":[60,80,65,90]})
result = df.groupby("dept").agg(
avg_sal=("sal","mean"),
max_sal=("sal","max"),
count=("sal","size")
)
print(result)कई कॉलमों पर groupby
पदानुक्रमित समूह बनाने के लिए कॉलमों की एक सूची पास करें।
import pandas as pd
df = pd.DataFrame({
"year":[2023,2023,2024,2024],
"dept":["HR","IT","HR","IT"],
"sal":[60,80,65,90]
})
print(df.groupby(["year","dept"])["sal"].sum())transform()
transform मूल इंडेक्स के साथ संरेखित Series लौटाता है — यह समूह-स्तरीय आँकड़ों को मूल DataFrame में वापस जोड़ने के लिए उपयोगी है।
import pandas as pd
df = pd.DataFrame({"dept":["HR","IT","HR","IT"],"sal":[60,80,65,90]})
df["dept_avg"] = df.groupby("dept")["sal"].transform("mean")
print(df)filter()
filter(func) केवल उन समूहों को रखता है जिनके लिए फ़ंक्शन True लौटाता है।
import pandas as pd
df = pd.DataFrame({"dept":["HR","IT","HR"],"sal":[60,80,65]})
# Keep only departments with mean salary > 70:
result = df.groupby("dept").filter(lambda g: g["sal"].mean() > 70)
print(result)pivot_table
pd.pivot_table कस्टम एग्रीगेशन के साथ स्प्रेडशीट-शैली का सारांश बनाता है।
import pandas as pd
df = pd.DataFrame({
"year":[2023,2023,2024,2024],
"region":["East","West","East","West"],
"sales":[100,150,120,200]
})
pt = pd.pivot_table(df, values="sales",
index="year", columns="region",
aggfunc="sum")
print(pt)crosstab
pd.crosstab क्रॉस-टैबुलेशन की गणना करता है — यह श्रेणीगत मानों के संयोजनों की गिनती के लिए उपयोगी है।
import pandas as pd
df = pd.DataFrame({"gender":["M","F","M","F","M"],"result":["pass","pass","fail","fail","pass"]})
print(pd.crosstab(df["gender"], df["result"]))apply()
apply(func) प्रत्येक समूह के DataFrame (axis=0) या प्रत्येक पंक्ति/कॉलम (axis=1) पर कस्टम फ़ंक्शन लागू करता है।
import pandas as pd
df = pd.DataFrame({"dept":["HR","IT","HR"],"sal":[60,80,65]})
def range_sal(g):
return g["sal"].max() - g["sal"].min()
print(df.groupby("dept").apply(range_sal))आकार बदलने के लिए unstack
बहु-स्तरीय groupby के बाद, सबसे अंदर के इंडेक्स स्तर को कॉलमों में ले जाने के लिए unstack() का उपयोग करें।
import pandas as pd
df = pd.DataFrame({"year":[2023,2023,2024],"dept":["HR","IT","HR"],"sal":[60,80,65]})
result = df.groupby(["year","dept"])["sal"].mean().unstack()
print(result)Time Series के लिए resample
resample("M") Time Series DataFrame को कैलेंडर अवधि के आधार पर समूहित करता है, जिससे मासिक या वार्षिक एग्रीगेशन संभव होता है।
import pandas as pd
idx = pd.date_range("2024-01-01", periods=90, freq="D")
df = pd.DataFrame({"sales": range(90)}, index=idx)
monthly = df.resample("ME").sum()
print(monthly)त्वरित जाँच
groupby().transform("mean") क्या लौटाता है?
पुनरावलोकन
groupby डेटा को एग्रीगेशन के लिए समूहों में बाँटता है। कई फ़ंक्शन के लिए agg(), समूह के आँकड़ों को वापस प्रसारित करने के लिए transform(), समूह हटाने के लिए filter() और बहु-आयामी सारांश के लिए pivot_table()/crosstab() का उपयोग करें।
एआई शिक्षक के साथ Python सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 76
- पाठ
- 320
अक्सर पूछे जाने वाले प्रश्न
क्या “GroupBy, एग्रीगेशन और पिवट टेबल” पाठ निःशुल्क है?
हाँ—“GroupBy, एग्रीगेशन और पिवट टेबल” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Python Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Python Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“GroupBy, एग्रीगेशन और पिवट टेबल” में मैं क्या सीखूँगा?
groupby संक्रियाओं और पिवट टेबल से डेटा का सारांश बनाएँ। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Python Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Python Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Python Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।
“GroupBy, एग्रीगेशन और पिवट टेबल” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Python Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Python Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- Series और DataFrame की मूल बातें
- अनुक्रमण, फ़िल्टरिंग और बूलियन मास्क
- GroupBy, एग्रीगेशन और पिवट टेबल
- मर्जिंग, जॉइनिंग और डेटा सफ़ाई