Håndtering av Kategoriske Variabler
Nå skal du arbeide med datasettet som ikke inneholder manglende verdier. NaN-verdiene fra kolonnen 'Age' ble erstattet med gjennomsnittet av kolonnen, og NaN-verdien fra kolonnen 'Fare' ble fjernet.
Så nå er det på tide å lære hvordan man håndterer kategoriske variabler. Kategorisk betyr at de har noen kategorier. For eksempel, i kolonnen 'Sex', finnes det 'male' og 'female'; eller i kolonnen 'Embarked', finnes det 'Q', 'S' og 'C'.
Hva bør vi gjøre for å beregne antall verdier i hver kategori eller for å finne informasjon om dem?
Du kjenner allerede til .loc[], .isin(), .between() og mange funksjoner, men i pandas finnes det en mer elegant og praktisk måte å gjøre dette på. Bruk funksjonen .get_dummies(). Som et eksempel vil vi bruke den på kolonnen 'Embarked'. Se på implementeringen og resultatet (vi vil vise navnene til 5 tilfeldige passasjerer og de nye kolonnene vi har opprettet).
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))
La oss undersøke en av de mulige utdataene, spesielt en av de mulige kombinasjonene av fem tilfeldig valgte rader. Du kan bla horisontalt gjennom tabellen for å se alle kolonnene:
Forklaring:
Som et resultat har funksjonen vår delt kolonnen 'Embarked' i tre kolonner: 'Embarked_C', 'Embarked_Q' og 'Embarked_S'. Totalt har vi tre kategorier. Hver passasjer har sin kategori i kolonnen 'Embarked'. Dermed oppretter funksjonen vår tre kolonner som tilsvarer hver kategori, og for hver passasjer fyller den raden i kolonnen med 1 hvis personen opprinnelig var tilknyttet den geografien; ellers settes det 0. Dermed får vi 1 kun i én kolonne.
pd.get_dummies(data, columns = ['Embarked'])
pd.get_dummies()– denne funksjonen konverterer kategoriske variabler til dummy-variabler (1 eller 0);data– dataframen du ønsker å bruke;columns = ['Embarked']– kolonner med kategoriske variabler som du ønsker å gjøre om til dummy-variabler. Merk at det er obligatorisk å sette kolonnenavnene i en liste.
Swipe to start coding
Din oppgave her er å transformere kolonnen 'Sex' til en med dummyvariabler i stedet for kategoriske verdier. Deretter skal du vise summen av verdiene i hver kategori.
Løsning
Takk for tilbakemeldingene dine!
single
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Awesome!
Completion rate improved to 3.03
Håndtering av Kategoriske Variabler
Sveip for å vise menyen
Nå skal du arbeide med datasettet som ikke inneholder manglende verdier. NaN-verdiene fra kolonnen 'Age' ble erstattet med gjennomsnittet av kolonnen, og NaN-verdien fra kolonnen 'Fare' ble fjernet.
Så nå er det på tide å lære hvordan man håndterer kategoriske variabler. Kategorisk betyr at de har noen kategorier. For eksempel, i kolonnen 'Sex', finnes det 'male' og 'female'; eller i kolonnen 'Embarked', finnes det 'Q', 'S' og 'C'.
Hva bør vi gjøre for å beregne antall verdier i hver kategori eller for å finne informasjon om dem?
Du kjenner allerede til .loc[], .isin(), .between() og mange funksjoner, men i pandas finnes det en mer elegant og praktisk måte å gjøre dette på. Bruk funksjonen .get_dummies(). Som et eksempel vil vi bruke den på kolonnen 'Embarked'. Se på implementeringen og resultatet (vi vil vise navnene til 5 tilfeldige passasjerer og de nye kolonnene vi har opprettet).
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))
La oss undersøke en av de mulige utdataene, spesielt en av de mulige kombinasjonene av fem tilfeldig valgte rader. Du kan bla horisontalt gjennom tabellen for å se alle kolonnene:
Forklaring:
Som et resultat har funksjonen vår delt kolonnen 'Embarked' i tre kolonner: 'Embarked_C', 'Embarked_Q' og 'Embarked_S'. Totalt har vi tre kategorier. Hver passasjer har sin kategori i kolonnen 'Embarked'. Dermed oppretter funksjonen vår tre kolonner som tilsvarer hver kategori, og for hver passasjer fyller den raden i kolonnen med 1 hvis personen opprinnelig var tilknyttet den geografien; ellers settes det 0. Dermed får vi 1 kun i én kolonne.
pd.get_dummies(data, columns = ['Embarked'])
pd.get_dummies()– denne funksjonen konverterer kategoriske variabler til dummy-variabler (1 eller 0);data– dataframen du ønsker å bruke;columns = ['Embarked']– kolonner med kategoriske variabler som du ønsker å gjøre om til dummy-variabler. Merk at det er obligatorisk å sette kolonnenavnene i en liste.
Swipe to start coding
Din oppgave her er å transformere kolonnen 'Sex' til en med dummyvariabler i stedet for kategoriske verdier. Deretter skal du vise summen av verdiene i hver kategori.
Løsning
Takk for tilbakemeldingene dine!
single