मुख्य सामग्री पर जाएं

Pandas 2.0: क्या नया है और बेहतरीन सुझाव

pandas 2.0 में गोता लगाएँ—यह आवश्यक डेटा विश्लेषण लाइब्रेरी का नवीनतम अपडेट है—जिसमें PyArrow इंटिग्रेशन, nullable डेटा टाइप्स, और बेहतर परफॉर्मेंस व दक्षता के लिए non-nanosecond datetime रेज़ोल्यूशन जैसी नई खूबियाँ शामिल हैं।
अपडेट किया गया 25 सित॰ 2026  · 9 मि॰ पढ़ें

AI के साथ खोजें

ChatGPTClaudePerplexity

डेटा विश्लेषण अक्सर अनिवार्य pandas लाइब्रेरी पर बहुत अधिक निर्भर करता है। यह आसान-से-उपयोग डेटा स्ट्रक्चर और डेटा मैनिपुलेशन फ़ंक्शंस प्रदान करती है, जो सारणीबद्ध डेटासेट्स को कुशलतापूर्वक संभालने में सक्षम बनाती हैं। pandas के साथ, उपयोगकर्ता आसानी से CSV फाइलों, Excel स्प्रेडशीट्स, SQL डेटाबेस और अन्य सहित विभिन्न स्रोतों से डेटा आयात, साफ, रूपांतरित और एकत्रित कर सकते हैं।

यदि आप pandas के साथ डेटा आयात और सफाई, आँकड़े निकालने, और विज़ुअलाइज़ेशन बनाने का तरीका सीखना चाहते हैं, तो हमारा Data Manipulation with pandas कोर्स देखें।

इस ट्यूटोरियल में, हम pandas लाइब्रेरी के नवीनतम संस्करण का अन्वेषण करेंगे और उदाहरणों के साथ उसकी नई खूबियों का उपयोग करना देखेंगे।

लंबे समय से प्रतीक्षित pandas 2.0 अपडेट आखिरकार आ गया

Pandas 2.0 को 3 अप्रैल, 2023 को जारी किया गया, जो तीन वर्षों के विकास का परिणाम है। इस नवीनतम संस्करण में कई नई खूबियाँ हैं, जैसे बेहतर एक्सटेंशन एरे सपोर्ट, PyArrow के लिए DataFrame सपोर्ट, और non-nanosecond datetime रेज़ोल्यूशन। हालाँकि, इसमें लागू डिप्रिकेशन भी शामिल हैं, जिनसे API में परिवर्तन हुए हैं।

Pandas के एक महत्वपूर्ण अपडेट के रूप में, संस्करण 2.0 ने 1.X में घोषित सभी डिप्रिकेशन लागू कर दिए हैं। 1.5.3 के सबसे हालिया रिलीज़ में लगभग 150 चेतावनियाँ थीं। यदि आपका कोड 1.X में वार्निंग-फ्री है, तो वह संस्करण 2.0 के साथ संगत होना चाहिए।

pandas 2.0 की नवीनतम खूबियों का अनावरण

आइए देखें pandas 2.0 में क्या नया है, और कुछ उन्नत फीचर्स का उपयोग कैसे करें।

बेहतर प्रदर्शन: तेज़ और अधिक मेमोरी-कुशल ऑपरेशन

PyArrow को इस रिलीज़ की प्रमुख विशेषता माना जा सकता है।

Pandas मूल रूप से मेमोरी प्रबंधन के लिए NumPy डेटा स्ट्रक्चर का उपयोग करके विकसित किया गया था, लेकिन अब उपयोगकर्ता PyArrow को बैकिंग मेमोरी फ़ॉर्मेट के रूप में चुन सकते हैं।

PyArrow एक Python लाइब्रेरी है (Arrow के ऊपर निर्मित) जो Arrow मेमोरी स्ट्रक्चर का उपयोग करके बड़े डेटासेट संभालने के लिए इंटरफ़ेस प्रदान करती है, साथ ही सीरियलाइज़ेशन, कंप्रेशन, और Apache Spark तथा Apache Parquet जैसे अन्य डेटा प्रोसेसिंग सिस्टम के साथ इंटिग्रेशन के टूल भी देती है।

Arrow एक ओपन-सोर्स और भाषा-निरपेक्ष कॉलमनर डेटा फ़ॉर्मेट है जो मेमोरी में डेटा को प्रदर्शित करता है। यह C++ में लिखी गई है, पर भाषा निरपेक्ष है।

मूल NumPy बैक-एंड के कारण अक्षम मेमोरी उपयोग एक आम समस्या है, जो उपयोगकर्ताओं को Spark, Dask, Ray आदि जैसे वैकल्पिक डेटा प्रोसेसिंग टूल अपनाने को प्रेरित करती है। PyArrow के बैक-एंड के जरिए मेमोरी खपत घटाकर, Pandas अब उपयोगकर्ताओं को अधिक सुव्यवस्थित अनुभव प्रदान कर सकता है और उन्हें अधिक कुशलता से काम करने में सक्षम बनाता है।

NumPy और PyArrow बैक-एंड के साथ mean और replace ऑपरेशंस की तुलना करते हुए बेंचमार्क, साथ ही Polars 

Pandas चार्ट

Polars Python के लिए Rust-आधारित डेटा मैनिपुलेशन लाइब्रेरी है, जो pandas जैसी DataFrame API प्रदान करती है, पर बड़े डेटासेट्स के लिए बेहतर प्रदर्शन और स्केलेबिलिटी के साथ। Polars लाइब्रेरी के बारे में और जानने के लिए आधिकारिक वेबसाइट देखें।

यहाँ PyArrow को बैक-एंड के रूप में उपयोग करके CSV फ़ाइल पढ़ने का कोड स्निपेट है:

pd.read_csv(my_file, dytpe_backend='pyarrow')

यदि आप pandas में कुशल तकनीकें सीखकर अपने Python कोड को ऑप्टिमाइज़ करना चाहते हैं, तो DataCamp पर Writing Efficient Code with pandas कोर्स देखें।

अब nullable डेटा टाइप्स संभव हैं

pandas में missing values से निपटना पहले चुनौतीपूर्ण रहा है क्योंकि NumPy कुछ डेटा टाइप्स में null मानों का समर्थन नहीं करता। उदाहरण के लिए, NumPy integer dtypes null मानों की अनुमति नहीं देते। जब किसी integer कॉलम में null मान लाया जाता था, तो कॉलम अपने-आप float dtype में बदल जाता था, जो आदर्श नहीं है।

Pandas 1.0 ने nullable dtypes पेश किए थे, लेकिन उनका उपयोग करने में कुछ मेहनत लगती थी। सौभाग्य से, नवीनतम संस्करण में, जब आप DataFrame में डेटा पढ़ते हैं, तो आप nullable dtypes के उपयोग को निर्दिष्ट कर सकते हैं, जिससे प्रक्रिया कहीं अधिक सरल हो जाती है।

pd.read_csv(my_file, use_nullable_dtypes=True)

Copy-on-Write परफॉर्मेंस एन्हांसमेंट

Copy-on-Write एक मेमोरी ऑप्टिमाइज़ेशन तकनीक है जिसका उपयोग Pandas परफॉर्मेंस बढ़ाने और बड़े डेटासेट्स को सँभालते समय मेमोरी उपयोग को न्यूनतम करने के लिए करता है। यह Pandas को Spark के अधिक समान बनाता है और बताता है कि Spark में lazy ऑपरेशन कैसे किए जाते हैं। Lazy ऑपरेशन वे होते हैं जो तुरंत निष्पादित नहीं होते, बल्कि किसी एक्शन के बुलाए जाने तक प्रतीक्षा करते हैं ताकि गणना ट्रिगर हो। इन्हें "lazy" इसलिए कहा जाता है क्योंकि ये अंतिम परिणामों की गणना और वापसी के लिए आवश्यक होने तक निष्पादन को टालते हैं।

मूल अवधारणा यह है कि जब किसी pandas ऑब्जेक्ट, जैसे DataFrame या Series, की कॉपी बनाई जाती है, तो मूल डेटा का एक संदर्भ उत्पन्न किया जाए और केवल तब नई कॉपी बनाई जाए जब कोई संशोधन किया जाए।

यह तरीका तब तक एक ही डेटा की कई प्रतियों को एक ही मेमोरी तक पहुँचने देता है जब तक कोई परिवर्तन न हो, जिससे अनावश्यक डेटा कॉपी करने की आवश्यकता समाप्त होती है और मेमोरी उपयोग में उल्लेखनीय कमी आती है, परिणामस्वरूप परफॉर्मेंस बढ़ती है।

Index द्वारा समर्थित NumPy संख्यात्मक प्रकार

pandas 2.0 में, Index फ़ीचर का विस्तार करके NumPy के संख्यात्मक dtypes जैसे int8, int16, int32, uint8, uint16, uint32, uint64, float32, और float64 शामिल किए गए हैं, जबकि पहले केवल int64, uint64, और float64 प्रकार समर्थित थे।

यह अपडेट कम-बिट आकार वाले इंडेक्स, जैसे 32-बिट इंडेक्स, बनाने में सक्षम बनाता है, उन ऑपरेशंस में जो पहले 64-बिट इंडेक्स पैदा करते थे।

अब सभी संख्यात्मक इंडेक्स संबंधित dtype के साथ Index के रूप में दर्शाए जाते हैं।

pip एक्स्ट्राज़ इंस्टॉल करना

pip के माध्यम से pandas इंस्टॉल करते समय एक्स्ट्राज़ निर्दिष्ट करके, आप वैकल्पिक निर्भरताओं के अतिरिक्त सेट इंस्टॉल कर सकते हैं। उदाहरण के लिए:

pip install "pandas[performance, aws]>=2.0.0"

यह performance और aws वैकल्पिक निर्भरताएँ इंस्टॉल करेगा। pandas की इंस्टॉलेशन गाइड उपलब्ध एक्स्ट्राज़ की सूची प्रदान करती है। इसमें शामिल हैं: [all, performance, computation, fss, aws, gcp, excel, parquet, feather, hdf5, spss, postgresql, mysql, sql-other, html, xml, plot, output_formatting, clipboard, compression, और test] उद्धरण चिह्न (“) लगाना न भूलें।

Timestamps में non-nanosecond रेज़ोल्यूशन

काफ़ी समय तक, pandas में एक सीमा थी कि timestamps केवल nanosecond रेज़ोल्यूशन में ही दर्शाए जाते थे। इसका अर्थ था कि 21 सितंबर, 1677 से पहले या 11 अप्रैल, 2264 के बाद की तिथियों को दर्शाना संभव नहीं था। यह सीमा उन शोधकर्ताओं के लिए कठिनाइयाँ पैदा करती थी जो लंबे समयावधि में फैले टाइम सीरीज़ डेटा का विश्लेषण करते थे।

हालाँकि, pandas 2.0 के साथ, second, millisecond और microsecond जैसे अन्य रेज़ोल्यूशन के लिए सपोर्ट जोड़ दिया गया है। यह सुधार लगभग +/- 2.9e11 वर्षों तक की समय-सीमा सक्षम करता है, जो अधिकांश उपयोग मामलों को कवर करता है।

Datetimes के लिए सुसंगत पार्सिंग फ़ॉर्मेट

पहले, pandas में to_datetime() फ़ंक्शन प्रत्येक तत्व के फ़ॉर्मेट का स्वतंत्र रूप से अनुमान लगाता था, जो तब समस्याग्रस्त हो सकता था जब उपयोगकर्ता एक सुसंगत फ़ॉर्मेट की अपेक्षा करते थे, लेकिन फ़ंक्शन तत्वों के बीच फ़ॉर्मेट बदल देता था।

यद्यपि यह तरीका मिश्रित तारीख़ फ़ॉर्मेट वाले मामलों के लिए उपयुक्त था, पर इससे कई उपयोगकर्ताओं को दिक्कतें हुईं।

pandas 2.0 में, पार्सिंग प्रक्रिया को संशोधित किया गया है ताकि पहले non-NA मान द्वारा निर्धारित एक सुसंगत फ़ॉर्मेट का उपयोग किया जाए। उपयोगकर्ता अब भी कोई फ़ॉर्मेट निर्दिष्ट कर सकते हैं, ऐसी स्थिति में वही फ़ॉर्मेट उपयोग होगा।

पुराना व्यवहार:

ser = pd.Series(['13-01-2000', '12-01-2000'])
pd.to_datetime(ser)
Out[2]:
0   2000-01-13
1   2000-12-01
dtype: datetime64[ns]

नया व्यवहार:

ser = pd.Series(['13-01-2000', '12-01-2000'])

pd.to_datetime(ser)
Out[43]: 
0   2000-01-13
1   2000-01-12
dtype: datetime64[ns]

उदाहरण आधिकारिक दस्तावेज़ से पुनरुत्पादित।

संगतता और माइग्रेशन

Backward incompatible API परिवर्तन वे संशोधन हैं जो किसी लाइब्रेरी की API में किए जाते हैं और मौजूदा कोड या इंटिग्रेशन को तोड़ सकते हैं। इनमें फ़ंक्शंस, क्लासेस या पैरामीटर्स का हटाया जाना या नाम बदलना, या उनके अपेक्षित व्यवहार में बदलाव शामिल हो सकता है। pandas 2.0 में सभी ब्रेकिंग परिवर्तनों की सूची के लिए दस्तावेज़ में backward incompatible API changes देखें।

pandas लाइब्रेरी को अपडेट करने के लिए, अपने टर्मिनल या नोटबुक में यह कमांड चलाएँ:

pip install -U pandas

समुदाय और सहायता

pandas 2.0 के पूर्ण रिलीज़ नोट्स देखें

आप हमारी pandas डेटा साइंस चीट शीट का उपयोग Python डेटा विश्लेषण लाइब्रेरी की बुनियादी बातों के त्वरित गाइड के रूप में कर सकते हैं, जिसमें कोड नमूने भी शामिल हैं.

Python for Data Science चीट शीट

DataCamp से चीटशीट। स्रोत

योगदानकर्ताओं के एक बड़े समूह और मेंटेनर्स की एक छोटी टीम ने मिलकर pandas को विकसित किया है, जो समुदाय द्वारा संचालित एक ओपन-सोर्स प्रोजेक्ट है। pandas की नेतृत्व टीम एक सकारात्मक, समावेशी और खुला समुदाय स्थापित करने के लिए प्रतिबद्ध है। यदि आप इस समुदाय में भाग लेना चाहते हैं, तो pandas का Contributor community guide देखें।

निष्कर्ष

Pandas 2.0 लोकप्रिय डेटा विश्लेषण लाइब्रेरी का एक महत्वपूर्ण अपडेट है, जो PyArrow के जरिए बेहतर परफॉर्मेंस, nullable डेटा टाइप्स, copy-on-write ऑप्टिमाइज़ेशन, इंडेक्स में NumPy संख्यात्मक प्रकारों के विस्तारित समर्थन, और non-nanosecond datetime रेज़ोल्यूशन जैसी नई खूबियाँ लाता है।

इस अपडेट के साथ, pandas अब अधिक कुशल मेमोरी उपयोग के साथ बड़े डेटासेट्स को संभालने में सक्षम है, जो उपयोगकर्ताओं को अधिक सुव्यवस्थित अनुभव प्रदान करता है।

इन नई खूबियों का लाभ उठाने के लिए, उपयोगकर्ता बस pip install -U pandas कमांड के साथ अपनी pandas लाइब्रेरी अपडेट कर सकते हैं। pandas समुदाय सहायता और संसाधन प्रदान करता रहता है, जिनमें DataCamp पर कोर्स भी शामिल हैं, ताकि उपयोगकर्ता अपने डेटा विश्लेषण कौशल को निखार सकें।

यहाँ कुछ उत्कृष्ट ट्यूटोरियल दिए गए हैं, जो आपकी डेटा विश्लेषण सीखने की यात्रा में सहायक हो सकते हैं।

विषय
Python
डेटा विश्लेषण

शीर्ष pandas कोर्स

कोर्स

pandas के साथ Data Manipulation

4 घंटा
566.1K
डेटा इम्पोर्ट और क्लीनिंग, सांख्यिकी गणना, और pandas के साथ विज़ुअलाइज़ेशन बनाना सीखें।
विवरण देखेंRight Arrow
पाठ्यक्रम शुरू करें
और देखेंRight Arrow