Hantering av Kategoriska Variabler
Nu kommer du att arbeta med en datamängd som inte innehåller några saknade värden. NaN-värdena i kolumnen 'Age' har ersatts med medelvärdet för kolumnen, och NaN-värdet i kolumnen 'Fare' har tagits bort.
Så nu är det dags att lära sig hantera kategoriska variabler. Kategoriska innebär att de har vissa kategorier. Till exempel, i kolumnen 'Sex' finns det 'male' och 'female'; eller i kolumnen 'Embarked' finns det 'Q', 'S' och 'C'.
Vad ska vi göra för att räkna antalet värden i varje kategori eller för att ta reda på information om dem?
Du känner redan till .loc[], .isin(), .between() och många funktioner, men i pandas finns det ett mer elegant och bekvämt sätt att göra detta. Använd funktionen .get_dummies(). Som exempel kommer vi att tillämpa den på kolumnen 'Embarked'. Titta på implementeringen och resultatet (vi kommer att visa fem slumpmässigt valda passagerares namn och de nya kolumner vi skapade).
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))
Låt oss undersöka en av de möjliga utdata, specifikt en av de möjliga kombinationerna av fem slumpmässigt valda rader. Du kan scrolla horisontellt genom tabellen för att se alla kolumner:
Förklaring:
Som ett resultat delar vår funktion upp kolumnen 'Embarked' i tre kolumner: 'Embarked_C', 'Embarked_Q' och 'Embarked_S'. Totalt har vi tre kategorier. Varje passagerare har sin kategori i kolumnen 'Embarked'. Därför skapar vår funktion tre kolumner som motsvarar varje kategori, och för varje passagerare fyller den raden i kolumnen med 1 om personen ursprungligen var kopplad till den geografiska platsen; annars anges 0. På så sätt får vi 1 i endast en kolumn.
pd.get_dummies(data, columns = ['Embarked'])
pd.get_dummies()– denna funktion konverterar kategoriska variabler till dummy-variabler (1 eller 0);data– den data frame du vill använda;columns = ['Embarked']– kolumner som innehåller kategoriska variabler som du vill omvandla till dummy-variabler. Observera att det är obligatoriskt att ange kolumnnamnen i en lista.
Swipe to start coding
Din uppgift här är att omvandla kolumnen 'Sex' till en med dummyvariabler istället för kategoriska variabler. Skriv sedan ut summan av värdena i varje kategori.
Lösning
Tack för dina kommentarer!
single
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Awesome!
Completion rate improved to 3.03
Hantering av Kategoriska Variabler
Svep för att visa menyn
Nu kommer du att arbeta med en datamängd som inte innehåller några saknade värden. NaN-värdena i kolumnen 'Age' har ersatts med medelvärdet för kolumnen, och NaN-värdet i kolumnen 'Fare' har tagits bort.
Så nu är det dags att lära sig hantera kategoriska variabler. Kategoriska innebär att de har vissa kategorier. Till exempel, i kolumnen 'Sex' finns det 'male' och 'female'; eller i kolumnen 'Embarked' finns det 'Q', 'S' och 'C'.
Vad ska vi göra för att räkna antalet värden i varje kategori eller för att ta reda på information om dem?
Du känner redan till .loc[], .isin(), .between() och många funktioner, men i pandas finns det ett mer elegant och bekvämt sätt att göra detta. Använd funktionen .get_dummies(). Som exempel kommer vi att tillämpa den på kolumnen 'Embarked'. Titta på implementeringen och resultatet (vi kommer att visa fem slumpmässigt valda passagerares namn och de nya kolumner vi skapade).
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))
Låt oss undersöka en av de möjliga utdata, specifikt en av de möjliga kombinationerna av fem slumpmässigt valda rader. Du kan scrolla horisontellt genom tabellen för att se alla kolumner:
Förklaring:
Som ett resultat delar vår funktion upp kolumnen 'Embarked' i tre kolumner: 'Embarked_C', 'Embarked_Q' och 'Embarked_S'. Totalt har vi tre kategorier. Varje passagerare har sin kategori i kolumnen 'Embarked'. Därför skapar vår funktion tre kolumner som motsvarar varje kategori, och för varje passagerare fyller den raden i kolumnen med 1 om personen ursprungligen var kopplad till den geografiska platsen; annars anges 0. På så sätt får vi 1 i endast en kolumn.
pd.get_dummies(data, columns = ['Embarked'])
pd.get_dummies()– denna funktion konverterar kategoriska variabler till dummy-variabler (1 eller 0);data– den data frame du vill använda;columns = ['Embarked']– kolumner som innehåller kategoriska variabler som du vill omvandla till dummy-variabler. Observera att det är obligatoriskt att ange kolumnnamnen i en lista.
Swipe to start coding
Din uppgift här är att omvandla kolumnen 'Sex' till en med dummyvariabler istället för kategoriska variabler. Skriv sedan ut summan av värdena i varje kategori.
Lösning
Tack för dina kommentarer!
single