single
Kategoristen Muuttujien Hallinta
Pyyhkäise näyttääksesi valikon
Nyt työskentelet tietojoukon kanssa, jossa ei ole puuttuvia arvoja. Sarakkeen NaN 'Age'-arvot korvattiin sarakkeen keskiarvolla, ja sarakkeen NaN 'Fare'-arvo poistettiin.
Nyt on aika oppia, miten kategorisia muuttujia käsitellään. Kategorinen tarkoittaa, että muuttujalla on joitakin luokkia. Esimerkiksi sarakkeessa 'Sex' on 'male' ja 'female'; tai sarakkeessa 'Embarked' on 'Q', 'S' ja 'C'.
Miten voimme laskea arvojen määrän kussakin kategoriassa tai saada niistä tietoa?
Tunnet jo funktiot .loc[], .isin(), .between() ja monia muita, mutta pandas-kirjastossa on vieläkin kätevämpi tapa tehdä tämä. Käytä funktiota .get_dummies(). Esimerkkinä sovellamme sitä sarakkeeseen 'Embarked'. Katso toteutus ja tulos (tulostamme viiden satunnaisen matkustajan nimet ja uudet luodut sarakkeet).
1234import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/titanic3.csv', index_col = 0) data = pd.get_dummies(data, columns = ['Embarked']) print(data[['Name', 'Embarked_C', 'Embarked_Q', 'Embarked_S']].sample(5))
Tarkastellaan yhtä mahdollisista tuloksista, eli yhtä mahdollista viiden satunnaisesti valitun rivin yhdistelmää. Voit vierittää taulukkoa vaakasuunnassa nähdäksesi kaikki sarakkeet:
Selitys:
Tämän seurauksena funktiomme jakoi sarakkeen 'Embarked' kolmeen sarakkeeseen: 'Embarked_C', 'Embarked_Q' ja 'Embarked_S'. Yhteensä meillä on kolme kategoriaa. Jokaisella matkustajalla on oma kategoriansa 'Embarked'-sarakkeessa. Näin ollen funktiomme luo kolme saraketta, jotka vastaavat kutakin kategoriaa, ja jokaisen matkustajan kohdalla se täyttää sarakkeen rivin arvolla 1, jos henkilö kuului alun perin kyseiseen maantieteelliseen alueeseen; muuten arvo on 0. Näin ollen saamme arvon 1 vain yhteen sarakkeeseen.
pd.get_dummies(data, columns = ['Embarked'])
pd.get_dummies()– tämä funktio muuntaa kategoriset muuttujat dummy-muuttujiksi (1 tai 0);data– tietokehys, jota haluat käyttää;columns = ['Embarked']– sarakkeet, joissa on kategorisia muuttujia, jotka haluat muuntaa dummy-muotoon. Huomaa, että sarakenimet on pakollista laittaa listaan.
Pyyhkäise aloittaaksesi koodauksen
Tehtävänäsi on muuntaa sarake 'Sex' sisältämään dummy-muuttujat kategoristen arvojen sijaan. Tämän jälkeen tulosta summa kunkin kategorian arvoista.
Ratkaisu
Kiitos palautteestasi!
single
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme