एकाइहरू
1. डाटा विज्ञान र विश्लेषणमा कृत्रिम बुद्धिमत्ताको परिचय: कार्यप्रवाह, भूमिका, सीमा, प्रमाणीकरण र नैतिकता 2. डाटा सङ्कलन र स्रोत बुझाइ: योजना, नमूना, गुणस्तर र चुहावट जागरूकता 3. डाटा क्लिनिङ र प्रिप्रोसेसिङ: छुटेको मान, आउटलियर र प्रकार रूपान्तरण 4. अन्वेषण डेटा विश्लेषण (EDA): वितरण, सम्बन्ध, र प्रारम्भिक अन्तर्दृष्टि 5. सुविधा ईन्जिनियरिङ्: भेरिएन्टहरू उत्पन्न गर्दै, कोडिङ, स्केलिङ, र चुहावट बेवास्ता गर्दै 6. मोडेल निर्माण: समस्या परिभाषा, एल्गोरिथ्म चयन, र प्रशिक्षण/परीक्षण विभाजन 7. मोडेल मूल्याङ्कन: मेट्रिक्स, क्रस-प्रमाणीकरण, र चरम शिक्षा 8. भिजुअलाइजेशन र स्टोरीटेलिङ: सटीक ग्राफिक्स, इमानदार ग्राफिक्स 9. कोड जेनेरेसन: पाइथन (पान्डा) र SQL को साथ एआई-सहायता विश्लेषण 10. डाटा चुहावट र पुन: उत्पादनशीलता: मौन आपदा र अनुशासन 11. MLOps फाउन्डेशन, नैतिकता, गोपनीयता र जिम्मेवार विश्लेषण
एकाइ 3 / 11

डाटा क्लिनिङ र प्रिप्रोसेसिङ: छुटेको मान, आउटलियर र प्रकार रूपान्तरण

लाभ:

  • हराएका मानहरूको कारण छुट्याउन सक्ने क्षमता (यादृच्छिक, व्यवस्थित, अर्थपूर्ण) र उपयुक्त रणनीति छनोट गर्ने र तालिमबाट मात्रै फिल मान गणना गर्ने क्षमता।
  • तिनीहरूलाई मेटाउनु अघि outliers जाँच गर्न र डाटा त्रुटि र एक साँचो दुर्लभ घटना बीच भेद गर्न क्षमता
  • मानकमा प्रकार र ढाँचा विसंगतिहरू ल्याउँदा लाइनहरू / खाली ठाउँहरूको संख्यामा प्रत्येक चरणको प्रभावलाई निगरानी गरेर मौन हानि रोक्न सक्ने क्षमता।

डेटा वैज्ञानिकको लगभग 60-80 प्रतिशत समय सफाईमा जान्छ; उद्योगमा, यसलाई आधा ठट्टामा "डेटा र्‍याङ्लिङ्ग" (डेटा र्‍याङ्लिङ्ग वा डाटा क्लिनिङ) भनिन्छ। किनभने वास्तविक-विश्व डेटा लगभग कहिल्यै विश्लेषणको लागि तयार हुँदैन: मितिहरू मिश्रित ढाँचाहरूमा हुन्छन्, संख्याहरू पाठको रूपमा भण्डारण गरिन्छ, केही कक्षहरू खाली हुन्छन्, ग्राहक दुई फरक हिज्जेहरू भएको एउटै तालिकामा तीन पटक देखा पर्दछ। यस एकाइमा हामी क्लिनअपका तीनवटा आधारभूत पक्षहरू समावेश गर्नेछौं: छुटेका मानहरू, आउटलियरहरू, र प्रकार/ढाँचा रूपान्तरण। आर्टिफिसियल इन्टेलिजेन्स यस काममा असाधारण रूपमा छिटो सहायक हो; तर के सफा गर्ने र कसरी सफा गर्ने भन्ने निर्णय तपाई आफैले गर्नुहुन्छ, किनकि प्रत्येक सफाई विकल्पले विश्लेषण परिवर्तन गर्दछ।

सफाई को सुनौलो नियम: हरेक परिवर्तन एक निर्णय हो

सेल मेटाउने, हराएको मान माध्यको साथ भर्ने, आउटलियर ट्रिम गर्ने - यी मध्ये कुनै पनि "तटस्थ" कार्यहरू होइनन्। प्रत्येकले डेटा परिवर्तन गर्दछ र परिणामलाई असर गर्छ। त्यसोभए सफा गर्ने सुनौलो नियम: कोडमा प्रत्येक परिवर्तन लेख्नुहोस्, तर्कलाई ध्यान दिनुहोस्, मूल डाटालाई कहिल्यै ओभरराइट नगर्नुहोस्। AI ले तपाईंलाई द्रुत सफाई कोड दिन्छ, तर त्यो कोडले के गर्छ भनेर बुझ्नु तपाईंको जिम्मेवारी हो; तपाईंले "खाली लाइनहरू मेटाउनुहोस्" भन्नुहुँदा कति लाइनहरू गएका छन् भनेर नहेरी यसलाई नचलाउनुहोस्।

सावधानी: मूल कच्चा डाटा कहिल्यै परिमार्जन नगर्नुहोस्। सफा गरिएको संस्करणलाई छुट्टै फाइल/तालिकामा लेख्नुहोस्। यस तरिकाले, यदि तपाईंले त्रुटि भेट्टाउनुभयो भने, तपाईं वर्ग एकमा फर्केर पुन: उत्पादन क्षमता कायम राख्न सक्नुहुन्छ।

हराइरहेको मान: यो किन खाली छ, के गर्ने

हराइरहेको मान (सामान्यतया NaN को रूपमा देखा पर्दछ - पाण्डामा "नम्बर होइन") जब सेल खाली हुन्छ। तर अन्तरको कारणले समाधान निर्धारण गर्छ। त्यहाँ तीन सामान्य अवस्थाहरू छन्। अनियमित हराइरहेको: सेन्सरले एक क्षणको लागि काम गरेन; यसलाई भर्नु उचित हुन सक्छ। व्यवस्थित हराइरहेको: फारम फिल्ड निश्चित ग्राहकहरूको लागि मात्र सोधिन्छ; यहाँको अन्तर वास्तवमा जानकारी हो। महत्त्वपूर्ण छुटेको: यदि "फिर्ता मिति" खाली छ भने, ग्राहक फिर्ता भएन; यो ठाउँको अर्थ ० वा "कुनै पनि छैन", यो भरिएको छैन।

प्रमुख रणनीतिहरू:

रणनीति

यो कहिले उपयुक्त छ?

जोखिम

पङ्क्ति मेटाउनुहोस्

छुटेको दर धेरै कम (<5%) र अनियमित छ

डाटा र प्रतिनिधित्व को हानि

एउटा स्तम्भ मेटाउनुहोस्

धेरै जसो स्तम्भ खाली छ (>60%)

जानकारी को हानि

औसत/मध्य भरण

संख्यात्मक, अनियमित रूपमा हराइरहेको छ

यसले भिन्नता घटाउँछ र वितरणलाई विकृत गर्दछ

श्रेणी "अज्ञात"

वर्गीय, व्यवस्थित हराएको

थप कोटीहरू उत्पन्न गर्छ

मोडेल संग भविष्यवाणी

जटिल, बहुमूल्य स्तम्भ

लीक जोखिम, जटिलता

महत्वपूर्ण बिन्दु: अभियोग मान प्रशिक्षण डेटाबाट मात्र गणना गरिनु पर्छ र समान मान परीक्षण डेटामा लागू गरिनु पर्छ। यदि तपाईंले परीक्षण डाटाको औसत समावेश गर्नुभयो भने, तपाईंले चुहावट सिर्जना गर्नुहुन्छ (एकाइ १०)। मध्यक (अर्डिनल डेटाको मध्य मान) लाई प्रायः मतलबलाई प्राथमिकता दिइन्छ किनभने यो माध्य भन्दा बाहिरका लागि बढी बलियो हुन्छ।

Outliers: त्रुटि वा वास्तविक?

आउटलियर दुई चीजहरू मध्ये एक हुन सक्छ: डेटा त्रुटि (उमेर स्तम्भमा 999) वा वास्तविक तर दुर्लभ घटना (ग्राहकको $ 2 मिलियन अर्डर)। दुईलाई भ्रमित गर्नु विनाशकारी छ: एक साँचो आउटलायर मेटाउनुहोस् र तपाईंले महत्त्वपूर्ण जानकारी फ्याँक्नुहुन्छ; यदि तपाइँ गल्ती छोड्नुभयो भने, तपाइँको औसत दुखाइ हुनेछ। तसर्थ, यसलाई स्वचालित रूपमा मेटाउन होइन, पहिले आउटलियर जाँच गर्न आवश्यक छ।

सामान्य पत्ता लगाउने विधिहरू: IQR विधि (इन्टरक्वार्टाइल दायरा; डेटाको 25% र 75% क्विन्टाइलहरू बीचको भिन्नताको 1.5 गुणा भन्दा बढी मानहरू आउटलियरहरू मानिन्छन्) र z-स्कोर (मानक मानबाट टाढा मानक विचलनहरूको संख्या; सामान्यतया 3 भन्दा बढी भएमा आउटलियर)। AI ले सेकेन्डमा यी गणनाहरूको लागि कोड लेख्छ; तर तपाईंले "मेट्नुहोस्" भन्नु अघि, ती मानहरू के हुन् भनेर जाँच गर्नुहोस्।

प्रकार र ढाँचा रूपान्तरण: मौन त्रुटि स्रोत

सबैभन्दा टाउको दुखाइ मध्ये एक डाटा प्रकार भ्रम हो। यदि "रकम" स्तम्भ पाठको रूपमा भण्डार गरिएको छ भने, तपाइँ थप्न सक्नुहुन्न; कार्यक्रमले गलत तरिकाले "एक हजार दुई सय पचास" को सट्टा "१,२५०.५०" जस्ता टर्की ढाँचा गरिएको सङ्ख्या पढ्छ। मितिहरू ("01/03/2024" दिन-महिना वा महिना-दिन?), कोटीहरू ("पुरुष"/"पुरुष"/"एम" एउटै कुरा हो?) र एकाइहरू (TL वा kuruş?) चुपचाप गलत परिणामहरू उत्पादन गर्छन्। सफा गर्ने एउटा ठूलो भाग भनेको यी विसंगतिहरूलाई मानकमा तान्नु हो: मितिहरू एउटै ढाँचामा, कोटीहरू एउटै हिज्जेमा, संख्याहरूलाई एक एकाइमा।

तीन मिनी केसहरू

केस १ - औसत जाल। एक टोलीले औसत ($ 48,500) को साथ आय स्तम्भमा 320 हराइरहेको मानहरू भर्यो। तर कमजोरीहरू व्यवस्थित थिए: यी कम आय भएका खण्डहरू थिए जसले कहिल्यै आय घोषणा गरेका थिएनन्। औसत भरणले यस समूहलाई कृत्रिम रूपमा धनी बनायो र क्रेडिट मोडेल गलत थियो। पाठ: भर्नु अघि "यो किन खाली छ" सोध्नुहोस्।

केस 2 - आउटलियर जुन मेटाउनु हुँदैन। एक खुद्रा विश्लेषकले बिक्री डेटामा 4 ठूला अर्डरहरू (प्रत्येक 1.8 मिलियन TL) मेटाए, तिनीहरू "त्रुटिहरू" थिए भन्ने सोच्दै। यद्यपि, यी वास्तविक कर्पोरेट आदेशहरू थिए र कुल कारोबारको 22% थिए। पोस्ट-मेटाइसन पूर्वानुमान मोडेलले संस्थागत मागलाई पूर्ण रूपमा छुटेको छ। पाठ: मेटाउनु अघि आउटलियर जाँच गर्नुहोस्।

केस 3 - मिति ढाँचा आपदा। CSV मा, मितिहरू "2024-03-01" र "01.03.2024" दुवैमा मिसाइएको थियो। जब YZ द्वारा लेखिएको कोडलाई पहिलो ढाँचा अनुसार पार्स गरिएको थियो, 6,400 रेखाहरू "अमान्य मिति" को रूपमा NaT बने र चुपचाप विश्लेषणबाट बहिष्कृत गरियो। लाइनहरूको संख्या घट्दा विश्लेषकले मात्र यो याद गरे। पाठ: सँधै रूपान्तरण पछि रेखा र खाली ठाउँहरूको संख्या जाँच गर्नुहोस्।

चार प्रतिलिपि गर्न मिल्ने टेम्प्लेटहरू

१) छुटेको मान नक्सा:

मसँग पाण्डा df छ। कोड लेख्नुहोस् जसले प्रत्येक स्तम्भको लागि हराएको संख्या र प्रतिशत (NaN) देखाउने तालिका उत्पादन गर्दछ। त्यसपछि, 40% भन्दा बढी छुटेको दर र 5% भन्दा कम हराएको दर भएका स्तम्भहरूलाई अलग-अलग सूचीबद्ध गर्नुहोस्। केवल यो निदान कोड उत्पन्न गर्नुहोस्, तपाईले सुझाव दिनुभएको रणनीति होइन; म निर्णय गर्छु।

२) बाहिरी निरीक्षण (मेटिने होइन):

कोड लेख्नुहोस् जुन IQR विधि प्रयोग गरेर मेरो "रकम" स्तम्भको लागि पत्ता लगाउँदछ (मेटिने छैन!)। बाहिरी पङ्क्तिहरूलाई छुट्टै df मा राख्नुहोस् ताकि म तिनीहरूलाई म्यानुअल रूपमा जाँच्न सकूँ। आउटलियरहरूको संख्या र कुलमा उनीहरूको अंश पनि छाप्नुहोस्।

3) प्रकार/ढाँचा मानकीकरण:

निम्न स्तम्भहरूलाई मानकीकरण गर्ने कोड लेख्नुहोस्:- "मिति": मिश्रित ढाँचाहरू हुन सक्छन् ("2024-03-01" र "01.03.2024"); ती सबैलाई डेटटाइममा रूपान्तरण गर्नुहोस्, अनुवाद गर्न नसकिनेहरूलाई गणना गर्नुहोस् र रिपोर्ट गर्नुहोस् (चुपचाप फ्याँक्नुहोस्)। - "लिंग": "पुरुष"/"पुरुष"/"M" -> "M", "महिला"/"महिला"/"F" -> "K"। - "रकम": टर्की ढाँचा गरिएको पाठ ("1.250,50") -> दशमलव संख्या। प्रत्येक रूपान्तरण पछि कति पङ्क्तिहरू प्रभावित छन् छाप्नुहोस्।

4) सफा गर्नु अघि / पछि जाँच गर्नुहोस्:

सफाइ चरण अघि र पछि चयन गरिएका स्तम्भहरूको df.shape, छुटेको गणना, र सारांश तथ्याङ्कहरू (मध्य, मध्य, न्यूनतम, अधिकतम) तुलना गर्ने कोड लेख्नुहोस्। उद्देश्य: के सफाई परिवर्तनहरू हेर्न।

कमजोर प्रम्प्ट / बलियो प्रम्प्ट

कमजोर प्रम्प्ट:

यो डाटा खाली गर्नुहोस्।

"स्पष्ट" अस्पष्ट छ; AI लाई थाहा छैन कुन हराएका भागहरू मेटाउने, के भर्ने, कुन स्तम्भमा प्रक्रिया गर्ने र कसरी। परिणाम: अन्धा, अपरिवर्तनीय परिवर्तन।

शक्तिशाली प्रम्प्ट:

तपाईंको भूमिका: डाटा सफा गर्ने सहायक। df स्तम्भहरू: customer_id (int), registration_date (मिश्रित ढाँचा पाठ), राजस्व_tl (पाठ, "1,200.00"), शहर (पाठ, असंगत हिज्जे)। नियमहरू: - मूल df परिवर्तन गर्दै; df_clean नामको प्रतिलिपिमा काम गर्नुहोस्।- Income_tl लाई नम्बरमा रूपान्तरण गर्नुहोस्, अनुवाद गर्न नसकिने कुराहरू गणना गर्नुहोस्।- रेकर्ड_मितिलाई मितिमा परिवर्तन गर्नुहोस्, त्रुटि रिपोर्ट गर्नुहोस्।- मेरो स्वीकृति बिना कुनै पङ्क्तिहरू नमेट्नुहोस्; उम्मेदवारहरूलाई अलग देखाउनुहोस्। प्रत्येक चरण पछि, df_temiz.shape र छुटेको नम्बर छाप्नुहोस्।

यहाँ स्रोत सुरक्षित छ, प्रत्येक रूपान्तरण गणना गरिएको छ, मेटाउने मानवमा छोडिएको छ।

सामान्य गल्तीहरू

  • "किन खाली छ?" नसोधाइ खाली ठाउँहरू भर्दै। माध्यको साथ व्यवस्थित/महत्वपूर्ण हराइरहेको भर्नुले डाटालाई विकृत गर्दछ।
  • यसलाई जाँच नगरी आउटलायर मेटाउँदै। वास्तविक तर दुर्लभ घटनाहरू त्याग्दा महत्त्वपूर्ण जानकारी नष्ट हुन्छ।
  • सबै डेटाबाट प्याडिङ मान गणना गर्दै। परीक्षण डाटा सहित चुहावट सिर्जना; प्रशिक्षणबाट मात्र गणना गर्नुहोस्।
  • रूपान्तरण पछि पङ्क्तिहरू/खाली ठाउँहरूको संख्या जाँच गर्दैन। पङ्क्तिहरू जुन चुपचाप NaT/NaN छन् विश्लेषणबाट बहिष्कृत छन्।
  • मूल डाटा ओभरराइट गर्दै। फिर्ता र प्रजनन क्षमता हराएको छ।
सुझाव: "पहिले-पछि" तुलनाको साथ सफा चलाउनुहोस्। प्रत्येक चरण पछि महत्वपूर्ण स्तम्भहरूको df.shape, छुटेको गणना, र सारांश तथ्याङ्कहरू छाप्नुहोस्। त्यसोभए तपाईंले तुरुन्तै देख्नुहुन्छ कि एक कदमले अप्रत्याशित रूपमा 6,000 पङ्क्तिहरू नष्ट गर्दछ।

संक्षेपमा

क्लिन्जिङ डेटा विज्ञानको सबैभन्दा समय-उपभोग र निर्णय-आवश्यक चरण हो। प्रत्येक परिवर्तनले डेटा परिवर्तन गर्दछ, त्यसैले प्रत्येक एक सचेत निर्णय हो। छुटेका मानहरूको लागि, सोध्नुहोस् "यो किन खाली छ?" कुनै पनि आउटलियरहरूलाई मेटाउनु अघि समीक्षा गर्नुहोस्; मानकमा प्रकार र ढाँचा ल्याउनुहोस्। प्रशिक्षण डेटाबाट मात्र भरण मान गणना गर्नुहोस्, मूल राख्नुहोस्, र यसलाई गणना गरेर प्रत्येक चरणको प्रभाव ट्र्याक गर्नुहोस्। AI यस व्यवसायमा एक ठूलो गतिवर्धक हो, तर मानिसहरूले निर्णय गर्छन् कि तपाईंले के सफा गर्नुहुन्छ र किन।

आवेदन कार्य

एउटा सानो तालिका लिनुहोस् (वा सिर्जना गर्नुहोस्) र जानाजानी यसमा तीनवटा समस्याहरू घुसाउनुहोस्: छुटेको मान टपल, आउटलियर, मिश्रित मिति ढाँचा। माथिका टेम्प्लेटहरूसँग AI बाट निदान र मानकीकरण कोड अनुरोध गर्नुहोस्; प्रत्येक चरण अघि/पछि पङ्क्ति र खाली ठाउँहरूको संख्या तुलना गर्नुहोस्। कम्तिमा एउटा "मौन हानि" समात्ने प्रयास गर्नुहोस् र नोट गर्नुहोस् कि तपाईंले यसलाई कसरी याद गर्नुभयो।

चेकलिस्ट

  • [ ] के मैले मूल कच्चा डाटा राखेको छु र प्रतिलिपिमा काम गरेको छु?
  • के मैले प्रत्येक छुटेको स्तम्भको लागि "यो किन खाली छ" प्रश्न सोधेको छु?
  • [ ] के मैले आउटलियरहरूलाई मेटाउनु अघि समीक्षा गरें?
  • [ ] के मैले तालिम डेटाबाट मात्र प्याडिङ मान गणना गरें?
  • [ ] के म प्रत्येक चरण पछि लाइनहरू / खाली ठाउँहरूको संख्या जाँच गर्दै छु र मौन हानि हटाउँदै छु?