Kaip išvalyti duomenis naudojant Python ir Pandas

Kaip Isvalyti Duomenis Naudojant Python Ir Pandas



Išmokti išvalyti duomenis naudojant Python ir Pandas yra labai svarbu visiems, kurie dirba su duomenimis. Duomenų valymas dažniausiai naudojamas tiksliai analizei ir modeliavimui, pašalinant klaidas ir neatitikimus. Šiame vadove žingsnis po žingsnio aprašomas procesas, kuriame parodoma, kaip tvarkyti trūkstamus duomenis ir pastebėti arba identifikuoti nuokrypius. Naudodami Python ir Pandas kaip savo įrankius, netvarkingus duomenis galime paversti švaria, tinkama naudoti informacija. Šis vadovas taip pat padeda pagerinti duomenų kokybę ir paruošti juos analizei bei sprendimų priėmimui.

Duomenų valymas naudojant Python ir Pandas

Duomenys šiandien yra tarsi pagrindiniai sprendimų priėmimo elementai. Tačiau įsivaizduokite, kad iš šios kolekcijos turite įvairių formų ir dydžių kaladėlių grupę; sunku sukurti ką nors prasmingo. Čia į pagalbą ateina duomenų valymas.

Šiame vadove nagrinėjama, kaip išvalyti duomenis naudojant Python sistemą, kuri yra Pandas, kad būtų lengviau priimti sprendimus. Duomenų valymas taip pat labai svarbus, nes dirbame su parduotuvės pardavimo įrašų sąrašu. Sąraše be jokios priežasties galime pastebėti trūkstamus skaičius, keistas datas ir pasikartojančius elementus. Jei atliksime skaičiavimus ar įrašus remdamiesi šia informacija, šios problemos gali sujaukti mūsų skaičiavimus ir prognozes. Duomenų valymas padeda išspręsti šias problemas ir užtikrinti, kad mūsų duomenys būtų tikslūs ir paruošti naudoti.







Duomenų valymas apima trūkstamų duomenų tvarkymą ir tai, ką daryti, kai trūksta kai kurių duomenų, dublikatų pašalinimą, nukopijuotų dalykų pašalinimą, duomenų tipų taisymą, įsitikinimą, kad viskas yra tinkamo formato ir pašalinių duomenų tvarkymą arba skaičių tvarkymą. kurios netelpa. Dėl šių klaidų duomenys atrodo taip pat ir standartizuoja duomenų pateikimą.



Norėdami pradėti, pirmiausia įsitikinkite, kad turime įdiegę Python ir Pandas. Tai galime padaryti įvesdami komandas savo kompiuterio terminale arba komandų eilutėje. Norėdami įdiegti šiame vadove nurodytus kodus, galime naudoti Python Pycharm IDE, įdiegtą mūsų sistemoje, arba internetinę Python platformą, kuri yra „Google Colab“, ir įdiegti komandas „pip“, kad įdiegtume svarbias bibliotekas.



Dabar importuokime Pandas ir įkelkime pavyzdinius duomenis. Šiame pavyzdyje kodams paleisti naudojame „Google Colab“. Taigi, pirmiausia importuojame Pandas įvesdami šią komandą:





! pip įdiegti pandas

importuoti pandos kaip pd

importuoti nelygus kaip pvz.

Tada įkeliame duomenų rinkinį, kurį norime rodyti, naudodami pd.read() metodą, kuris kaip įvesties parametrą pasirenka failo kelią.

# Įkelkite duomenų rinkinį

duomenis = pd. skaityti_csv ( „/content/sample_data/california_housing_test.csv“ )

# Rodyti pirmąsias kelias eilutes

spausdinti ( duomenis. galva ( ) )



Kitame pavyzdyje naudojame duomenis apie pardavimus mažoje parduotuvėje. Norint tvarkyti trūkstamus duomenis, mūsų duomenyse kartais trūksta informacijos. Šias trūkstamas dalis vadiname „NaN“ (tai reiškia „ne skaičius“). Norėdami rasti šias trūkstamas reikšmes Python scenarijuje, pirmiausia įkeliame duomenų rinkinį, kaip darėme ankstesniame pavyzdyje. Tada randame visas trūkstamas reikšmes duomenų rinkinyje naudodami funkciją „missing_values ​​= data.isnull().sum()“. Ši funkcija suranda visas trūkstamas reikšmes duomenų rinkinyje. Tada mes juos rodome naudodami spausdinimo () funkciją.

! pip įdiegti pandas
importuoti pandos kaip pd
importuoti nelygus kaip pvz.

# Įkelkite duomenų rinkinį
duomenis = pd. skaityti_csv ( „/content/sample_data/california_housing_test.csv“ )

# Rodyti pirmąsias kelias eilutes
spausdinti ( duomenis. galva ( ) )

# Patikrinkite, ar trūksta reikšmių
trūkstamos_vertės = duomenis. isnull ( ) . suma ( )

# Rodyti trūkstamas vertes pagal stulpelį
spausdinti ( trūkstamos_vertės )

Radę trūkstamus duomenis bet kurioje eilutėje, kurioje vykdomas anksčiau minėtas kodas, galime pašalinti tas eilutes, nes tose eilutėse nėra daug naudingų duomenų. Mes netgi galime atspėti tas trūkstamas reikšmes ir užpildyti tuščias vietas pagrįstais spėjimais, įvertinę laiku pagrįstus duomenis pagal netoliese esančius taškus.

Dabar pašaliname dublikatus, kurie yra to paties dalyko kopijos, nes jie gali supainioti mūsų analizę. Norėdami rasti pasikartojančias reikšmes duomenų rinkinyje, naudojame funkciją „duplicate_rows = data[data.duplicated()]“. Norėdami atsisakyti šių pasikartojančių reikšmių, iškviečiame funkciją data.drop_duplicates(). Galime juos rasti ir pašalinti naudodami šį kodą:

! pip įdiegti pandas
importuoti pandos kaip pd
importuoti nelygus kaip pvz.
# Įkelkite duomenų rinkinį
duomenis = pd. skaityti_csv ( „/content/sample_data/california_housing_test.csv“ )
# Rodyti pirmąsias kelias eilutes
spausdinti ( duomenis. galva ( ) )

# Patikrinkite, ar nėra pasikartojančių eilučių
pasikartojančios_eilutės = duomenis [ duomenis. dubliuotas ( ) ]

# Pašalinkite dublikatus
duomenis = duomenis. drop_dublikatai ( )

# Pašalinus dublikatus, rodyti kelias pirmąsias eilutes
spausdinti ( duomenis. galva ( ) )

Duomenų tipai nusprendžia, kokius duomenis galima saugoti, kad būtų nustatyti duomenų tipai. Labai svarbu turėti tinkamą kiekvienos rūšies duomenų tipą. Pavyzdžiui, datos turi turėti datos ir laiko duomenų tipą, o skaičiai turi būti tokio tipo kaip int, float ir kt. Norėdami patikrinti duomenų tipus, naudojame funkciją „data.dtypes“. Ši funkcija gali būti naudojama šiais būdais:

! pip įdiegti pandas
importuoti pandos kaip pd
importuoti nelygus kaip pvz.
# Įkelkite duomenų rinkinį
duomenis = pd. skaityti_csv ( „/content/sample_data/california_housing_test.csv“ )
# Rodyti pirmąsias kelias eilutes
spausdinti ( duomenis. galva ( ) )
# Patikrinkite kiekvieno stulpelio duomenų tipus
duomenų_tipai = duomenis. dtipai

# Rodyti duomenų tipus
spausdinti ( duomenų_tipai )

Jei randame kokių nors problemų, galime pakeisti duomenų tipą naudodami Pandas. Pavyzdžiui, datas galime paversti datos formatu. „DataFrame“ atributas „dtypes“ pateikia informaciją apie kiekvieno stulpelio duomenų tipus. Jei nustatome, kad duomenų tipas nesutampa, galime naudoti Pandas astype() funkciją, kad konvertuotume stulpelius į norimus tipus.

Po duomenų tipų kartais susiduriame su išskirtinėmis reikšmėmis, kurios labai skiriasi nuo kitų. Jie gali sujaukti mūsų skaičiavimus. Siekdami susidoroti su nuokrypiais, apibrėžiame funkciją, kuri naudoja „np.abs(stats.zscore(data))“ z-score funkciją, kuri lygina mūsų duomenų reikšmes su slenksčio reikšme. Bet kuri vertė, išskyrus šios slenksčio diapazoną, laikoma išskirtine . Pažiūrėkime, kaip rasti ir tvarkyti nuokrypius:

! pip įdiegti pandas
importuoti pandos kaip pd
importuoti nelygus kaip pvz.

# Įkelkite duomenų rinkinį
duomenis = pd. skaityti_csv ( „/content/sample_data/california_housing_test.csv“ )

# Rodyti pirmąsias kelias eilutes
spausdinti ( duomenis. galva ( ) )
scipy importuoti statistika

def detect_outliers ( duomenis ) :
z_balai = pvz. abs ( statistika. zscore ( duomenis ) )
grąžinti pvz. kur ( z_balai > 3 )

# Stulpelyje „Pardavimas“ aptikkite ir tvarkykite nuokrypius
nuokrypiai = detect_outliers ( duomenis [ 'ilguma' ] )
duomenis [ 'ilguma' ] . vieta [ nuokrypiai ] = duomenis [ 'ilguma' ] . mediana ( )

# Stulpelyje „Parduoti vienetai“ aptikkite ir tvarkykite nuokrypius
nuokrypiai = detect_outliers ( duomenis [ 'platuma' ] )
duomenis [ 'platuma' ] . vieta [ nuokrypiai ] = duomenis [ 'platuma' ] . mediana ( )

# Apdoroję nuokrypius, parodykite kelias pirmąsias eilutes
spausdinti ( duomenis. galva ( ) )

Naudojame paprastą metodą, kad surastume ir ištaisytume ankstesnio kodo nuokrypius. Tai apima kraštutinių verčių pakeitimą vidutine duomenų verte. Šis kodas naudoja Z balo metodą, kad aptiktų mūsų duomenų rinkinio „ilgumos“ ir „platumos“ stulpelių nuokrypius. Nukrypimai pakeičiami atitinkamų stulpelių medianinėmis vertėmis.

Kad duomenys atrodytų vienodi, kartais jie gali atrodyti kitaip, net jei tai reiškia tą patį. Pavyzdžiui, datos gali būti parašytos įvairiais formatais. Standartizavimas apima nuoseklaus duomenų formato ir pateikimo užtikrinimą. Tai gali apimti datų formatavimą, teksto konvertavimą į mažąsias raides arba skaitinių reikšmių normalizavimą. Standartizuokite duomenų rinkinio stulpelį „Data“ ir įsitikinkime, kad mūsų duomenys atrodo taip pat:

importuoti pandos kaip pd
importuoti nelygus kaip pvz. # Importuoti numply

# Įkelkite duomenis
duomenis = pd. skaityti_csv ( „sales_data.csv“ )

# Kad stulpelis „Data“ atrodytų nuoseklus
duomenis [ 'Data' ] = pd. to_datetime ( duomenis [ 'Data' ] )

# Pažiūrėkite, kaip tai atrodo dabar
spausdinti ( duomenis. galva ( ) )

Šiame pavyzdyje mes standartizuojame savo duomenų rinkinio datos formatą į Python datos ir laiko formatą, naudodami funkciją „pd.to_datetime(data [Data“])“. Konvertuodami stulpelį „Data“ į tą patį formatą, palengviname darbą su šiais duomenimis. Išvestyje rodomos kelios pirmosios duomenų rinkinio eilutės su standartizuotu stulpeliu „Data“.

Išvada

Keliaudami per duomenų valymą naudodami Python ir Pandas sužinojome, kaip patobulinti savo duomenis analizei. Pradėjome nuo supratimo, kodėl duomenų valymas yra toks svarbus. Tai padeda mums priimti geresnius sprendimus. Išnagrinėjome, kaip elgtis su trūkstamais duomenimis, pašalinti pasikartojančius duomenis, pataisyti duomenų tipus, tvarkyti nuokrypius ir padaryti, kad mūsų duomenys atrodytų taip pat. Turėdami šiuos įgūdžius, esame geriau pasirengę netvarkingus duomenis paversti kažkuo, kuriuo galime pasitikėti ir panaudoti svarbiai informacijai atrasti. Duomenų valymas yra nuolatinis procesas, pvz., kambario tvarkymas, todėl mūsų duomenų analizės kelionė tampa sėkmingesnė.