डेटा हाताने स्वच्छ करण्याऐवजी pandas मध्ये का करावा?

पँडसमध्ये डेटा स्वच्छ करणे उपयोगाचे ठरते, कारण प्रत्येक पायरीची नोंद होते आणि पुढच्या महिन्यात निर्यात केलेल्या डेटावर ती काही सेकंदांत पुन्हा चालवता येते. याउलट, स्प्रेडशीटमध्ये हाताने केलेल्या दुरुस्त्या वेळखाऊ असतात, त्या विसरणे सोपे असते आणि त्यांचे लेखापरीक्षण करता येत नाही.

फर्नहिल गार्डन्स नावाचा, चार ठिकाणी केंद्रे असलेला बागकाम साहित्य विक्री केंद्रांचा काल्पनिक समूह कल्पना करा. वित्त विश्लेषक तोमाशला ऑनलाइन मागण्यांची मासिक CSV मिळते. खालील नमुन्यात एकच मागणी दोनदा आली आहे, केंद्राचे नाव वेगवेगळ्या प्रकारे लिहिले आहे, रकमांमध्ये चलनचिन्ह आणि स्वल्पविराम आहेत, तारखांमध्ये काही ठिकाणी दिवस आधी तर काही ठिकाणी वर्ष आधी आहे आणि गहाळ मूल्ये रिकामी, 'लागू नाही' आणि '-' अशी दिसतात. हे हाताने दुरुस्त करायला एक दिवस लागतो आणि बेरजा पैसे स्वीकारण्याची सेवा देणाऱ्या संस्थेच्या अहवालाशी कधीच पूर्णपणे जुळत नाहीत.

order_idsiteorder_dateamountpostcode
10231लीड्स03/11/2026£1,240.00LS6
10231लीड्स03/11/2026£1,240.00LS6
10232लीड्स2026-11-0486.50लागू नाही
10233यॉर्क05/11/2026-YO1
10234हॅरोगेट142

pandas वापरून डेटा टप्प्याटप्प्याने कसा स्वच्छ करावा?

पँडसमध्ये डेटा स्वच्छ करण्यासाठी, आधी गहाळ मूल्ये दर्शवणारी चिन्हे नमूद करून डेटा लोड करा, तो तपासा, मजकुरात एकसारखेपणा आणा, संख्या आणि तारखा योग्य स्वरूपात रूपांतरित करा, दुबार नोंदी काढा, उरलेल्या रिकाम्या मूल्यांचे काय करायचे ते ठरवा आणि शेवटी विश्वासार्ह एकूण आकड्याशी निकाल पडताळा. या क्रमाने पायऱ्या केल्यास एका दुरुस्तीमुळे दुसरी दुरुस्ती निष्फळ होत नाही.

1. गहाळ मूल्ये दर्शवणाऱ्या खुणा निर्दिष्ट करून डेटा लोड करा

pandas मधील read_csv कार्य फाइल वाचून तिचा डेटा DataFrame मध्ये आणते. रिकाम्या नोंदींसारखी काही मूल्ये pandas आधीपासूनच गहाळ मानते. त्याशिवाय 'N/A' आणि '-' यांसारख्या आणखी कोणत्या मजकूर नोंदी गहाळ मानायच्या, ते na_values या प्राचलाद्वारे सांगता येते. त्या इथेच नमूद केल्याने नंतर त्यांचा शोध घ्यावा लागत नाही.

2. काहीही बदलण्यापूर्वी तपासणी करा

head वापरून सुरुवातीच्या ओळी, info वापरून स्तंभांतील माहितीचे प्रकार आणि रिक्त नसलेल्या मूल्यांची संख्या, तसेच isna आणि sum एकत्र वापरून प्रत्येक स्तंभातील रिक्त मूल्यांची संख्या पाहा. तुम्हाला काय आढळते ते लिहा: फर्नहिलमध्ये amount मजकूर म्हणून साठवलेले आहे आणि order_date मध्ये वेगवेगळी स्वरूपे आहेत.

3. मजकुराचे प्रमाणीकरण करा

स्तंभावर मजकुरासाठीच्या पद्धती वापरा: str.strip सुरुवातीच्या आणि शेवटच्या मोकळ्या जागा काढते, तर str.lower किंवा str.title अक्षरांचे मोठे-लहान रूप एकसारखे करते. त्यामुळे ' Leeds', 'leeds ' आणि 'LEEDS' ही एकाच ठिकाणाची नोंद ठरते. त्यानंतर उरलेले वेगळे लेखन शोधण्यासाठी unique वापरून वेगवेगळ्या मूल्यांची यादी काढा.

4. संख्यांचे रूपांतरण करा

str.replace वापरून चलनचिन्ह आणि हजारांच्या स्थानावरील स्वल्पविराम काढा, त्यानंतर to_numeric वापरून संख्येत रूपांतर करा. त्याचा errors हा आर्ग्युमेंट coerce असा सेट केल्यास, वाचता न आलेल्या मूल्यामुळे प्रक्रिया थांबण्याऐवजी ते अनुपस्थित मूल्य म्हणून नोंदवले जाते. त्यामुळे त्या ओळी नकळत गमावण्याऐवजी तुम्हाला त्या मोजता आणि तपासता येतात.

5. तारखांचे स्वरूप बदला

to_datetime मजकुराचे योग्य तारखांमध्ये रूपांतर करते. वेगवेगळे स्वरूप असल्यास, शक्य तिथे स्वरूप स्पष्टपणे द्या किंवा ब्रिटिश पद्धतीच्या तारखांसाठी dayfirst सेट करा आणि errors हे coerce वर सेट करा, म्हणजे वाचता न आलेल्या तारखांचे NaT मध्ये रूपांतर होईल. pandas मध्ये तारीख उपलब्ध नसल्याचे दाखवण्यासाठी NaT वापरले जाते. लक्षात ठेवा, dayfirst हा प्राधान्यक्रम आहे, काटेकोर नियम नाही; त्यामुळे निकाल तपासा.

6. दुबार नोंदी काढा

drop_duplicates पुनरावृत्त ओळी काढून टाकते. पूर्वनिर्धारित पद्धतीनुसार, प्रत्येक स्तंभ जुळत असेल तरच एखादी ओळ पुनरावृत्त मानली जाते; त्याच्या subset या घटकाद्वारे order_id सारख्या निवडक स्तंभांच्या आधारे पुनरावृत्ती ठरवता येते आणि keep द्वारे पहिली प्रत ठेवायची की शेवटची हे ठरते.

7. उरलेल्या उणिवांबाबत निर्णय घ्या

dropna मूल्ये नसलेल्या ओळी काढून टाकते, पण पूर्वनिर्धारित पद्धतीनुसार कोणत्याही एका स्तंभात मूल्य नसले तरी ती ओळ काढली जाते. amount सारख्या खरोखर आवश्यक असलेल्या स्तंभांत मूल्य नसलेल्या ओळीच काढण्यासाठी त्याचा subset हा घटक वापरा किंवा रिकाम्या जागी ठरावीक मूल्य भरण्यासाठी fillna वापरा. त्यानंतर स्तंभांचे अंतिम डेटा प्रकार ठरवण्यासाठी astype वापरा, उदाहरणार्थ site साठी श्रेणी प्रकार.

डेटा साफ करण्याची कमकुवत आणि सुधारित फेरी कशी असते?

कमकुवत प्रयत्नात read_csv वापरून फाइल उघडली जाते, कोणतेही आर्ग्युमेंट न देता dropna वापरले जाते आणि त्यानंतर कोणतेही आर्ग्युमेंट न देता drop_duplicates वापरले जाते. पोस्टकोड अनेकदा रिकामा असल्यामुळे dropna अनेक वैध ऑर्डर काढून टाकते. तसेच ' लीड्स' आणि 'लीड्स ' अजूनही वेगवेगळे असल्यामुळे काही दुबार नोंदी शिल्लक राहतात. महसूल प्रत्यक्षापेक्षा खूप कमी दिसतो आणि कोणत्या ओळी काढल्या गेल्या हे कोणालाच कळत नाही.

सुधारित प्रक्रियेत डेटा लोड करताना 'N/A' आणि '-' ही मूल्ये रिकामी मानली जातात, site मधील सुरुवातीच्या व शेवटच्या मोकळ्या जागा काढून प्रत्येक शब्दाचे पहिले अक्षर मोठे केले जाते, '£' आणि स्वल्पविराम काढल्यानंतर to_numeric वापरून amount रूपांतरित केले जाते, dayfirst आणि coerce वापरून order_date रूपांतरित केली जाते, order_id वरून पुनरावृत्ती ठरवून पहिली नोंद ठेवली जाते आणि फक्त amount नसलेल्या ओळी काढल्या जातात. त्यानंतर प्रत्येक टप्प्यात किती ओळी काढल्या ते दाखवले जाते आणि एकूण महसुलाची तुलना पेमेंट सेवा पुरवठादाराच्या अहवालाशी केली जाते. आता Tomasz प्रत्येक फरक स्पष्ट करू शकतो.

डेटा स्वच्छ करण्याचे काम यशस्वी झाले की नाही हे कसे तपासावे?

डेटा स्वच्छ करण्याची प्रक्रिया तपासण्यासाठी, प्रत्येक टप्प्यापूर्वी आणि नंतर ओळी मोजा, एखादी महत्त्वाची एकूण रक्कम स्वतंत्र स्रोताशी पडताळा आणि रूपांतरण करताना मूल्ये अनुपलब्ध ठरवण्यात आलेल्या ओळी तपासा. स्तंभांचे डेटा प्रकार निश्चित करण्यासाठी info पुन्हा चालवा आणि स्थळासारख्या श्रेणींतील सर्व वेगवेगळी मूल्ये नोंदवा. एखाद्या टप्प्यात अपेक्षेपेक्षा जास्त ओळी काढल्या गेल्या असतील, तर पुढे जाण्यापूर्वी त्या तपासा.

pandas वापरून डेटा स्वच्छ करताना AI सहाय्यक कशी मदत करू शकतो?

तुम्ही प्रत्येक स्तंभ, त्यातील समस्या आणि तुम्हाला हवा असलेला नियम सांगितल्यास AI सहाय्यक डेटा स्वच्छ करण्याच्या टप्प्यांचा मसुदा तयार करू शकतो आणि अपरिचित फंक्शन समजावून सांगू शकतो. नावे, पत्ते किंवा संपूर्ण टपाल कोड यांसारखा खरा ग्राहक डेटा पेस्ट करण्याऐवजी काल्पनिक उदाहरण मूल्ये वापरून रचना स्पष्ट करा. प्रत्येक टप्प्यानंतर ओळींची संख्या सांगायला सांगा आणि त्याने वापरलेला प्रत्येक फंक्शन आर्ग्युमेंट अधिकृत pandas दस्तऐवजांशी पडताळून पाहा, कारण सहाय्यक कधीकधी अस्तित्वात नसलेले किंवा आवृत्त्यांनुसार बदललेले पर्याय सुचवतात.

pandas वापरून डेटा स्वच्छ करताना होणाऱ्या सामान्य चुका कोणत्या?

सर्वात सामान्य चूक म्हणजे कोणतेही आर्ग्युमेंट न देता dropna वापरणे आणि केवळ एका ऐच्छिक स्तंभातील माहिती नसल्यामुळे एरवी योग्य असलेल्या ओळी गमावणे. इतर चुका: मजकूर प्रमाणित करण्याआधी दुबार नोंदी काढणे, दिवस आणि महिन्याचा क्रम न तपासता तारखा रूपांतरित करणे, मूळ फाइलवरच बदल जतन करणे आणि स्वच्छ केलेल्या डेटाची एकूण बेरीज विश्वासार्ह आकड्याशी कधीही न ताडणे.

Tosheo.ai मध्ये हा धडा कुठे येतो?

हा डेटा विज्ञान अभ्यासक्रमाच्या डेटा विज्ञान आणि विश्लेषण विभागातील प्रोग्रामिंगचा धडा आहे. Tosheo.ai मधील प्रत्येक विषयाची सुरुवात संकल्पना आणि कोड न लिहिता करता येणाऱ्या सरावाने होते. प्रोग्रामिंगचे धडे हे अधिक खोलवर शिकण्यासाठीचे ऐच्छिक मार्ग आहेत: नोंदणी केल्यानंतर या धड्याच्या संपूर्ण कृती-आधारित आवृत्तीत तुम्ही Python मध्ये pandas वापरून माहिती स्वच्छ करण्याचा प्रत्येक टप्पा लिहिता व चालवता आणि स्पष्ट निकषांच्या गुणांकन मार्गदर्शकानुसार तुमचे मूल्यमापन होते. Python नवीन असेल तर Python अभ्यासक्रमापासून सुरुवात करा. यात व्यावहारिक कौशल्य विकसित होते; हे सघन प्रशिक्षण नाही किंवा नोकरीची हमीही नाही.

स्रोत आणि व्याप्ती

pandas दस्तऐवजीकरण: read_csv (तपासले: 19 October 2026) ↗

pandas वापरकर्ता मार्गदर्शिका: गहाळ डेटा हाताळणे (तपासले: 19 October 2026) ↗

pandas दस्तऐवजीकरण: DataFrame.dropna (तपासले: 19 October 2026) ↗

pandas दस्तऐवजीकरण: DataFrame.drop_duplicates (तपासले: 19 October 2026) ↗

pandas दस्तऐवजीकरण: DataFrame.astype (तपासले: 19 October 2026) ↗

pandas दस्तऐवजीकरण: to_numeric (तपासले: 19 October 2026) ↗

pandas दस्तऐवजीकरण: to_datetime (तपासले: 19 October 2026) ↗

pandas दस्तऐवजीकरण: Series.str.strip (तपासले: 19 October 2026) ↗