ஆதாயங்கள்:
- காணாமல் போன மதிப்புகளுக்கான காரணத்தை (சீரற்ற, முறையான, அர்த்தமுள்ள) வேறுபடுத்தி, பொருத்தமான உத்தியைத் தேர்ந்தெடுத்து, பயிற்சியிலிருந்து மட்டும் நிரப்பு மதிப்பைக் கணக்கிடும் திறன்
- அவுட்லையர்களை நீக்குவதற்கு முன் அவற்றைப் பரிசோதித்து, தரவுப் பிழை மற்றும் உண்மையான அரிய நிகழ்வை வேறுபடுத்தி அறியும் திறன்
- தரநிலைக்கு வகை மற்றும் வடிவமைப்பு முரண்பாடுகளைக் கொண்டுவரும் போது, கோடுகள்/வெற்றிடங்களின் எண்ணிக்கையில் ஒவ்வொரு அடியின் தாக்கத்தையும் கண்காணிப்பதன் மூலம் அமைதியான இழப்பைத் தடுக்கும் திறன்
தரவு விஞ்ஞானியின் சுமார் 60-80 சதவிகிதம் சுத்தம் செய்வதற்குச் செல்கிறது; தொழில்துறையில், இது அரை நகைச்சுவையாக "தரவு சண்டை" (தரவு சண்டை அல்லது தரவு சுத்தம்) என்று அழைக்கப்படுகிறது. நிஜ-உலகத் தரவு பகுப்பாய்விற்குத் தயாராக இல்லை என்பதால்: தேதிகள் கலவையான வடிவங்களில் உள்ளன, எண்கள் உரையாகச் சேமிக்கப்படுகின்றன, சில செல்கள் காலியாக உள்ளன, ஒரு வாடிக்கையாளர் இரண்டு வெவ்வேறு எழுத்துப்பிழைகளுடன் ஒரே அட்டவணையில் மூன்று முறை தோன்றுகிறார். இந்த யூனிட்டில் நாம் தூய்மைப்படுத்தலின் மூன்று அடிப்படை அம்சங்களை உள்ளடக்குவோம்: விடுபட்ட மதிப்புகள், அவுட்லையர்கள் மற்றும் வகை/வடிவ மாற்றம். இந்த வேலையில் செயற்கை நுண்ணறிவு ஒரு அசாதாரணமான வேகமான உதவியாளர்; ஆனால் எதைச் சுத்தம் செய்வது, எப்படிச் சுத்தம் செய்வது என்பதை நீங்கள்தான் தீர்மானிக்கிறீர்கள், ஏனென்றால் ஒவ்வொரு துப்புரவுத் தேர்வும் பகுப்பாய்வை மாற்றுகிறது.
சுத்தம் செய்வதற்கான தங்க விதி: ஒவ்வொரு மாற்றமும் ஒரு முடிவு
ஒரு கலத்தை நீக்குதல், விடுபட்ட மதிப்பை சராசரியுடன் நிரப்புதல், வெளிப்புறத்தை ஒழுங்கமைத்தல் - இவை எதுவும் "நடுநிலை" செயல்பாடுகள் அல்ல. ஒவ்வொன்றும் தரவை மாற்றுகிறது மற்றும் முடிவை பாதிக்கிறது. எனவே தூய்மைப்படுத்துதலின் தங்க விதி: ஒவ்வொரு மாற்றத்தையும் குறியீட்டில் எழுதுங்கள், பகுத்தறிவைக் கவனியுங்கள், அசல் தரவை மேலெழுத வேண்டாம். AI உங்களுக்கு விரைவான தூய்மைப்படுத்தும் குறியீட்டை வழங்குகிறது, ஆனால் அந்த குறியீடு என்ன செய்கிறது என்பதைப் புரிந்துகொள்வது உங்கள் பொறுப்பு; "வெற்று வரிகளை நீக்கு" என்று நீங்கள் சொன்னால் எத்தனை வரிகள் போய்விட்டன என்று பார்க்காமல் அதை இயக்க வேண்டாம்.
எச்சரிக்கை: அசல் மூலத் தரவை ஒருபோதும் மாற்ற வேண்டாம். சுத்தம் செய்யப்பட்ட பதிப்பை தனி கோப்பு/அட்டவணைக்கு எழுதவும். இந்த வழியில், நீங்கள் ஒரு பிழையைக் கண்டால், நீங்கள் சதுரம் ஒன்றிற்குச் சென்று மறுஉற்பத்தியை பராமரிக்கலாம்.
மதிப்புகள் இல்லை: அது ஏன் காலியாக உள்ளது, என்ன செய்வது
ஒரு செல் காலியாக இருக்கும் போது காணாமல் போன மதிப்பு (பொதுவாக NaN - "ஒரு எண் அல்ல" என பாண்டாக்களில் தோன்றும்). ஆனால் இடைவெளிக்கான காரணம் தீர்வை தீர்மானிக்கிறது. மூன்று பொதுவான சூழ்நிலைகள் உள்ளன. ரேண்டம் மிஸ்ஸிங்: சென்சார் ஒரு கணம் வேலை செய்யவில்லை; அதை நிரப்புவது நியாயமானதாக இருக்கலாம். முறையாகக் காணவில்லை: குறிப்பிட்ட வாடிக்கையாளர்களுக்கு மட்டுமே படிவப் புலம் கேட்கப்படுகிறது; இங்கே உள்ள இடைவெளி உண்மையில் தகவல். குறிப்பிடத்தக்கவை காணவில்லை: "திரும்ப வரும் தேதி" காலியாக இருந்தால், வாடிக்கையாளர் திரும்பவில்லை; இந்த ஸ்பேஸ் என்பது 0 அல்லது "இல்லை", அது நிரப்பப்படவில்லை.
முக்கிய உத்திகள்:
உத்தி
அது எப்போது பொருத்தமானது?
ஆபத்து
வரிசையை நீக்கு
விடுபட்ட விகிதம் மிகக் குறைவு (<5%) மற்றும் சீரற்றது
தரவு மற்றும் பிரதிநிதித்துவ இழப்பு
ஒரு நெடுவரிசையை நீக்கு
நெடுவரிசையின் பெரும்பகுதி காலியாக உள்ளது (>60%)
தகவல் இழப்பு
சராசரி/சராசரி நிரப்புதல்
எண், தோராயமாக விடுபட்டது
இது மாறுபாட்டைக் குறைக்கிறது மற்றும் விநியோகத்தை சிதைக்கிறது
வகை "தெரியாது"
திட்டவட்டமான, முறையாக காணவில்லை
கூடுதல் வகைகளை உருவாக்குகிறது
மாதிரியுடன் கணிப்பு
சிக்கலான, விலைமதிப்பற்ற நெடுவரிசை
கசிவு ஆபத்து, சிக்கலானது
முக்கியமான புள்ளி: கணக்கீட்டு மதிப்பானது பயிற்சித் தரவிலிருந்து மட்டுமே கணக்கிடப்பட வேண்டும் மற்றும் அதே மதிப்பானது சோதனைத் தரவிற்கும் பயன்படுத்தப்பட வேண்டும். சோதனைத் தரவின் சராசரியை நீங்கள் சேர்த்தால், நீங்கள் கசிவை உருவாக்குகிறீர்கள் (அலகு 10). இடைநிலை (ஆர்டினல் தரவின் நடுத்தர மதிப்பு) பெரும்பாலும் சராசரிக்கு முன்னுரிமை அளிக்கப்படுகிறது, ஏனெனில் இது சராசரியை விட வெளிப்புறங்களுக்கு மிகவும் வலுவானது.
அவுட்லியர்ஸ்: பிழை அல்லது உண்மையா?
அவுட்லையர் இரண்டு விஷயங்களில் ஒன்றாக இருக்கலாம்: தரவுப் பிழை (வயது நிரலில் 999) அல்லது உண்மையான ஆனால் அரிதான நிகழ்வு (வாடிக்கையாளரின் $2 மில்லியன் ஆர்டர்). இரண்டையும் குழப்புவது பேரழிவு தரக்கூடியது: உண்மையான அவுட்லைரை நீக்கிவிட்டு, முக்கியமான தகவல்களைத் தூக்கி எறிந்துவிடுவீர்கள்; நீங்கள் ஒரு தவறை விட்டுவிட்டால், உங்கள் சராசரிகள் பாதிக்கப்படும். எனவே, அதை தானாக நீக்காமல், வெளிப்புறத்தை முதலில் ஆய்வு செய்வது அவசியம்.
பொதுவான கண்டறிதல் முறைகள்: IQR முறை (இடைவெளி வரம்பு; தரவுகளின் 25% மற்றும் 75% க்வின்டைல்களுக்கு இடையே உள்ள வித்தியாசத்தை விட 1.5 மடங்கு அதிகமாக இருக்கும் மதிப்புகள் வெளிப்புறமாகக் கருதப்படுகின்றன) மற்றும் z-ஸ்கோர் (சராசரி மதிப்பிலிருந்து விலகி இருக்கும் நிலையான விலகல்களின் எண்ணிக்கை; பொதுவாக அது 3 ஐ விட அதிகமாக இருந்தால் அது புறம்போக்கு). AI இந்த கணக்கீடுகளுக்கான குறியீட்டை நொடிகளில் எழுதுகிறது; ஆனால் "நீக்கு" என்று சொல்வதற்கு முன், அந்த மதிப்புகள் என்ன என்பதைச் சரிபார்க்கவும்.
வகை மற்றும் வடிவமைப்பு மாற்றம்: அமைதியான பிழை ஆதாரம்
மிகவும் தலைவலிகளில் ஒன்று தரவு வகை குழப்பம். "தொகை" நெடுவரிசை உரையாக சேமிக்கப்பட்டால், நீங்கள் சேர்க்க முடியாது; நிரல் "ஆயிரத்து இருநூற்று ஐம்பது" என்பதற்குப் பதிலாக "1,250.50" போன்ற துருக்கிய வடிவமைக்கப்பட்ட எண்ணை தவறாகப் படிக்கிறது. தேதிகள் ("01/03/2024" நாள்-மாதம் அல்லது மாதம்-நாள்?), பிரிவுகள் ("ஆண்"/"ஆண்"/"எம்" ஒன்றா?) மற்றும் அலகுகள் (TL அல்லது kuruş?) அமைதியாக தவறான முடிவுகளைத் தருகின்றன. சுத்தம் செய்வதில் பெரும்பகுதி இந்த முரண்பாடுகளை தரநிலைக்கு இழுக்கிறது: தேதிகள் ஒரு வடிவத்தில், பிரிவுகள் ஒரு எழுத்துப்பிழை, எண்கள் ஒரு அலகு.
மூன்று சிறிய வழக்குகள்
வழக்கு 1 - சராசரி பொறி. வருமான நெடுவரிசையில் விடுபட்ட 320 மதிப்புகளை சராசரியாக ($48,500) ஒரு குழு நிரப்பியது. ஆனால் குறைபாடுகள் முறையானவை: இவை குறைந்த வருமானம் கொண்ட பிரிவாகும், அவை ஒருபோதும் வருமானத்தை அறிவிக்கவில்லை. சராசரி நிரப்புதல் இந்த குழுவை செயற்கையாக பணக்காரர் ஆக்கியது மற்றும் கடன் மாதிரி தவறானது. பாடம்: அதை நிரப்புவதற்கு முன் "ஏன் காலியாக உள்ளது" என்று கேட்கவும்.
வழக்கு 2 - நீக்கப்படக் கூடாத அவுட்லியர். ஒரு சில்லறை ஆய்வாளர், "பிழைகள்" என்று நினைத்து, விற்பனைத் தரவில் 4 பெரிய ஆர்டர்களை (ஒவ்வொன்றும் 1.8 மில்லியன் TL) நீக்கினார். இருப்பினும், இவை உண்மையான கார்ப்பரேட் ஆர்டர்கள் மற்றும் மொத்த வருவாயில் 22% ஆகும். நீக்குதலுக்குப் பிந்தைய முன்னறிவிப்பு மாதிரியானது நிறுவன தேவையை முற்றிலும் தவறவிட்டது. பாடம்: அதை நீக்கும் முன் வெளியே உள்ளதை ஆராயவும்.
வழக்கு 3 - தேதி வடிவம் பேரழிவு. CSV இல், "2024-03-01" மற்றும் "01.03.2024" ஆகிய இரண்டிலும் தேதிகள் கலக்கப்பட்டன. YZ ஆல் எழுதப்பட்ட குறியீடு முதல் வடிவமைப்பின்படி பாகுபடுத்தப்பட்டபோது, 6,400 வரிகள் NaT ஆனது "தவறான தேதி" மற்றும் பகுப்பாய்விலிருந்து அமைதியாக விலக்கப்பட்டது. வரிகளின் எண்ணிக்கை குறையும்போதுதான் ஆய்வாளர் இதைக் கவனித்தார். பாடம்: மாற்றிய பின் கோடுகள் மற்றும் வெற்றிடங்களின் எண்ணிக்கையை எப்போதும் சரிபார்க்கவும்.
நகலெடுக்கக்கூடிய நான்கு வார்ப்புருக்கள்
1) மதிப்பு வரைபடம் விடுபட்டுள்ளது:
என்னிடம் பாண்டாஸ் டிஎஃப் உள்ளது. ஒவ்வொரு நெடுவரிசைக்கும் விடுபட்ட (NaN) எண்ணிக்கை மற்றும் சதவீதத்தைக் காட்டும் அட்டவணையை உருவாக்கும் குறியீட்டை எழுதவும். பின்னர், 40%க்கு மேல் விடுபட்டுள்ள நெடுவரிசைகளையும், 5%க்குக் கீழே விடுபட்ட விகிதத்தையும் தனித்தனியாகப் பட்டியலிடுங்கள். இந்த நோயறிதல் குறியீட்டை உருவாக்குங்கள், நீங்கள் பரிந்துரைக்கும் உத்தி அல்ல; நான் முடிவெடுப்பேன்.
2) வெளிப்புற ஆய்வு (நீக்குதல் அல்ல):
IQR முறையைப் பயன்படுத்தி எனது "தொகை" நெடுவரிசைக்கு வெளியே உள்ளவர்களைக் கண்டறியும் (நீக்கவில்லை!) குறியீட்டை எழுதவும். வெளிப்புற வரிசைகளை ஒரு தனி df இல் வைக்கவும், அதனால் நான் அவற்றை கைமுறையாக ஆய்வு செய்ய முடியும். அவுட்லையர்களின் எண்ணிக்கை மற்றும் மொத்தத்தில் அவற்றின் பங்கையும் அச்சிடவும்.
3) வகை/வடிவ தரநிலைப்படுத்தல்:
பின்வரும் நெடுவரிசைகளை தரநிலையாக்கும் குறியீட்டை எழுதவும்:- "தேதி": கலவை வடிவங்களாக இருக்கலாம் ("2024-03-01" மற்றும் "01.03.2024"); அவை அனைத்தையும் தேதி நேரத்திற்கு மாற்றவும், மொழிபெயர்க்க முடியாதவற்றை எண்ணி அறிக்கை செய்யவும் (அமைதியாக தூக்கி எறியுங்கள்). - "பாலினம்": "ஆண்"/"ஆண்"/"எம்" -> "எம்", "பெண்"/"பெண்"/"எஃப்" -> "கே". - "தொகை": துருக்கிய வடிவமைக்கப்பட்ட உரை ("1.250,50") -> தசம எண். ஒவ்வொரு மாற்றத்திற்கும் பிறகு எத்தனை வரிசைகள் பாதிக்கப்படுகின்றன என்பதை அச்சிடவும்.
4) சுத்தம் செய்வதற்கு முன்/பின் சரிபார்க்கவும்:
தூய்மைப்படுத்தும் படிக்கு முன்னும் பின்னும் தேர்ந்தெடுக்கப்பட்ட நெடுவரிசைகளின் df.shape, விடுபட்ட எண்ணிக்கை மற்றும் சுருக்கப் புள்ளிவிவரங்கள் (சராசரி, சராசரி, நிமிடம், அதிகபட்சம்) ஆகியவற்றை ஒப்பிடும் குறியீட்டை எழுதவும். நோக்கம்: துப்புரவு மாற்றங்கள் என்ன என்பதைப் பார்க்க.
பலவீனமான வரியில் / வலுவான வரியில்
பலவீனமான உடனடி:
இந்தத் தரவை அழிக்கவும்.
"தெளிவு" என்பது தெளிவற்றது; என்ன விடுபட்ட பகுதிகளை நீக்க வேண்டும், எதை நிரப்ப வேண்டும், எந்த நெடுவரிசையை செயலாக்க வேண்டும், எப்படி செய்வது என்று AIக்கு தெரியாது. விளைவு: குருட்டு, மாற்ற முடியாத மாற்றங்கள்.
சக்திவாய்ந்த தூண்டுதல்:
உங்கள் பங்கு: தரவு சுத்திகரிப்பு உதவியாளர். df பத்திகள்: customer_id (int), registration_date (கலப்பு வடிவ உரை), income_tl (உரை, "1,200.00"), நகரம் (உரை, சீரற்ற எழுத்துப்பிழை). விதிகள்:- அசல் df ஐ மாற்றுதல்; df_clean என்று பெயரிடப்பட்ட நகலை உருவாக்கவும்.- income_tl ஐ எண்ணாக மாற்றவும், மொழிபெயர்க்க முடியாததை எண்ணவும்.- பதிவு_தேதியை தேதி நேரத்திற்கு மாற்றவும், பிழையைப் புகாரளிக்கவும்.- எனது அனுமதியின்றி எந்த வரிசையையும் நீக்க வேண்டாம்; வேட்பாளர்களை தனித்தனியாகக் காட்டு. ஒவ்வொரு அடியிலும், df_temiz.shape மற்றும் விடுபட்ட எண்ணை அச்சிடவும்.
இங்கே ஆதாரம் பாதுகாக்கப்படுகிறது, ஒவ்வொரு மாற்றமும் கணக்கிடப்படுகிறது, நீக்குவது மனிதனிடம் விடப்படுகிறது.
பொதுவான தவறுகள்
- "ஏன் காலியாக இருக்கிறது?" என்று கேட்காமல் இடைவெளிகளை நிரப்புதல். முறையான/குறிப்பிடத்தக்க விடுபட்டதை சராசரியுடன் நிரப்புவது தரவை சிதைக்கிறது.
- புறக்கணிப்பை ஆராயாமல் நீக்குதல். உண்மையான ஆனால் அரிதான நிகழ்வுகளை நிராகரிப்பது முக்கியமான தகவல்களை அழிக்கிறது.
- அனைத்து தரவுகளிலிருந்தும் திணிப்பு மதிப்பைக் கணக்கிடுகிறது. சோதனை தரவு உட்பட கசிவு உருவாக்குகிறது; பயிற்சியிலிருந்து கணக்கிடுங்கள்.
- மாற்றிய பின் வரிசைகள்/வெற்றிடங்களின் எண்ணிக்கையை சரிபார்க்கவில்லை. அமைதியாக NaT/NaN இருக்கும் வரிசைகள் பகுப்பாய்விலிருந்து விலக்கப்பட்டுள்ளன.
- அசல் தரவை மேலெழுதுதல். திரும்பவும் மறுஉற்பத்தியும் இழக்கப்படுகிறது.
உதவிக்குறிப்பு: "முன்-பின்" ஒப்பீடு மூலம் க்ளீன்ஸை இயக்கவும். ஒவ்வொரு அடியிலும் முக்கியமான நெடுவரிசைகளின் df.shape, விடுபட்ட எண்ணிக்கை மற்றும் சுருக்கமான புள்ளிவிவரங்களை அச்சிடவும். எனவே, ஒரு படி எதிர்பாராத விதமாக 6,000 வரிசைகளை அழிப்பதை நீங்கள் உடனடியாகக் காண்கிறீர்கள்.
சுருக்கமாக
சுத்திகரிப்பு என்பது தரவு அறிவியலில் அதிக நேரத்தை எடுத்துக்கொள்ளும் மற்றும் முடிவெடுக்கும் கட்டமாகும். ஒவ்வொரு மாற்றமும் தரவை மாற்றுகிறது, எனவே ஒவ்வொன்றும் ஒரு நனவான முடிவு. விடுபட்ட மதிப்புகளுக்கு, "ஏன் காலியாக உள்ளது?" அவற்றை நீக்குவதற்கு முன், வெளியில் உள்ளவற்றை மதிப்பாய்வு செய்யவும்; வகை மற்றும் வடிவமைப்பை தரநிலைக்கு கொண்டு வாருங்கள். பயிற்சித் தரவிலிருந்து மட்டுமே நிரப்பு மதிப்பைக் கணக்கிடவும், அசலை வைத்து, ஒவ்வொரு படியின் தாக்கத்தை எண்ணுவதன் மூலம் கண்காணிக்கவும். இந்த வணிகத்தில் AI ஒரு மிகப்பெரிய முடுக்கி, ஆனால் நீங்கள் எதை சுத்தம் செய்ய வேண்டும், ஏன் சுத்தம் செய்ய வேண்டும் என்பதை மனிதர்கள் தீர்மானிக்கிறார்கள்.
விண்ணப்ப பணி
ஒரு சிறிய அட்டவணையை எடுத்து (அல்லது உருவாக்கவும்) அதில் மூன்று சிக்கல்களை வேண்டுமென்றே செருகவும்: விடுபட்ட மதிப்பு டூப்பிள், ஒரு அவுட்லியர், ஒரு கலப்பு தேதி வடிவம். மேலே உள்ள டெம்ப்ளேட்களுடன் AI இலிருந்து கண்டறிதல் மற்றும் தரப்படுத்தல் குறியீட்டைக் கோரவும்; ஒவ்வொரு அடிக்கும் முன்/பின் வரிசைகள் மற்றும் வெற்றிடங்களின் எண்ணிக்கையை ஒப்பிடுக. குறைந்தபட்சம் ஒரு "அமைதியான இழப்பை" பிடிக்க முயற்சிக்கவும், அதை நீங்கள் எப்படி கவனித்தீர்கள் என்பதைக் கவனியுங்கள்.
சரிபார்ப்பு பட்டியல்
- [ ] நான் அசல் மூலத் தரவை வைத்து நகலில் வேலை செய்தேனா?
- [ ] விடுபட்ட ஒவ்வொரு நெடுவரிசைக்கும் "ஏன் காலியாக உள்ளது" என்ற கேள்வியை நான் கேட்டிருக்கிறேனா?
- [ ] நான் அவற்றை நீக்கும் முன் அவுட்லையர்களை மதிப்பாய்வு செய்தேனா?
- [] நான் திணிப்பு மதிப்பை பயிற்சி தரவிலிருந்து மட்டுமே கணக்கிட்டேனா?
- [ ] ஒவ்வொரு அடியின் பின்னரும் நான் கோடுகள்/வெற்றிடங்களின் எண்ணிக்கையைச் சரிபார்த்து, அமைதியான இழப்பை நீக்குகிறேனா?