Gestione delle Variabili Categoriche
Ora lavorerai con un set di dati che non contiene valori mancanti. I valori NaN
della colonna 'Age'
sono stati sostituiti con la media della colonna, mentre il valore NaN
della colonna 'Fare'
è stato eliminato.
Quindi, è il momento di imparare a gestire le variabili categoriche. Categoriale significa che hanno alcune categorie. Ad esempio, nella colonna 'Sex'
ci sono 'male'
e 'female'
; oppure nella colonna 'Embarked'
ci sono 'Q'
, 'S'
e 'C'
.
Cosa bisogna fare per calcolare il numero di valori in ciascuna categoria o per ottenere informazioni su di esse?
Conosci già .loc[]
, .isin()
, .between()
e molte altre funzioni, ma in pandas esiste un modo più elegante e comodo per farlo. Utilizza la funzione .get_dummies()
. Come esempio, la applicheremo alla colonna 'Embarked'
. Osserva l'implementazione e il risultato (verranno visualizzati i nomi di 5 passeggeri scelti casualmente e le nuove colonne create).
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))
Analizziamo uno dei possibili output, in particolare una delle possibili combinazioni di cinque righe selezionate casualmente. Puoi scorrere orizzontalmente la tabella per visualizzare tutte le colonne:
Spiegazione:
Di conseguenza, la nostra funzione ha suddiviso la colonna 'Embarked'
in tre colonne: 'Embarked_C'
, 'Embarked_Q'
e 'Embarked_S'
. In totale, abbiamo tre categorie. Ogni passeggero ha la propria categoria nella colonna 'Embarked'
. Pertanto, la nostra funzione crea tre colonne corrispondenti a ciascuna categoria e, per ogni passeggero, riempie la riga della colonna con 1
se la persona era inizialmente associata a quella geografia; altrimenti, inserisce 0
. In questo modo, otteniamo 1
in una sola colonna.
pd.get_dummies(data, columns = ['Embarked'])
pd.get_dummies()
- questa funzione converte le variabili categoriche in variabili dummy (1 o 0);data
- il data frame che si desidera utilizzare;columns = ['Embarked']
- colonne che contengono variabili categoriche da trasformare in variabili dummy. Attenzione: è obbligatorio inserire i nomi delle colonne all'interno di una lista.
Swipe to start coding
Il tuo compito qui è trasformare la colonna 'Sex'
in una con variabili dummy invece che categoriali. Successivamente, visualizza la somma dei valori in ciascuna categoria.
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Awesome!
Completion rate improved to 3.03
Gestione delle Variabili Categoriche
Scorri per mostrare il menu
Ora lavorerai con un set di dati che non contiene valori mancanti. I valori NaN
della colonna 'Age'
sono stati sostituiti con la media della colonna, mentre il valore NaN
della colonna 'Fare'
è stato eliminato.
Quindi, è il momento di imparare a gestire le variabili categoriche. Categoriale significa che hanno alcune categorie. Ad esempio, nella colonna 'Sex'
ci sono 'male'
e 'female'
; oppure nella colonna 'Embarked'
ci sono 'Q'
, 'S'
e 'C'
.
Cosa bisogna fare per calcolare il numero di valori in ciascuna categoria o per ottenere informazioni su di esse?
Conosci già .loc[]
, .isin()
, .between()
e molte altre funzioni, ma in pandas esiste un modo più elegante e comodo per farlo. Utilizza la funzione .get_dummies()
. Come esempio, la applicheremo alla colonna 'Embarked'
. Osserva l'implementazione e il risultato (verranno visualizzati i nomi di 5 passeggeri scelti casualmente e le nuove colonne create).
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))
Analizziamo uno dei possibili output, in particolare una delle possibili combinazioni di cinque righe selezionate casualmente. Puoi scorrere orizzontalmente la tabella per visualizzare tutte le colonne:
Spiegazione:
Di conseguenza, la nostra funzione ha suddiviso la colonna 'Embarked'
in tre colonne: 'Embarked_C'
, 'Embarked_Q'
e 'Embarked_S'
. In totale, abbiamo tre categorie. Ogni passeggero ha la propria categoria nella colonna 'Embarked'
. Pertanto, la nostra funzione crea tre colonne corrispondenti a ciascuna categoria e, per ogni passeggero, riempie la riga della colonna con 1
se la persona era inizialmente associata a quella geografia; altrimenti, inserisce 0
. In questo modo, otteniamo 1
in una sola colonna.
pd.get_dummies(data, columns = ['Embarked'])
pd.get_dummies()
- questa funzione converte le variabili categoriche in variabili dummy (1 o 0);data
- il data frame che si desidera utilizzare;columns = ['Embarked']
- colonne che contengono variabili categoriche da trasformare in variabili dummy. Attenzione: è obbligatorio inserire i nomi delle colonne all'interno di una lista.
Swipe to start coding
Il tuo compito qui è trasformare la colonna 'Sex'
in una con variabili dummy invece che categoriali. Successivamente, visualizza la somma dei valori in ciascuna categoria.
Soluzione
Grazie per i tuoi commenti!
single