ColumnTransformer per tipi misti
Preparazione diversa per ogni gruppo di colonne.
ColumnTransformer per tipi misti è una lezione Data Science Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Data Science Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Data Science Academy include 4 lezioni in totale.
Le colonne non sono tutte uguali
Le tabelle reali combinano numeri e categorie, e ogni tipo richiede una preparazione diversa. Un solo scaler per tutto semplicemente non funzionerebbe. 🧩
Presentiamo ColumnTransformer
Un ColumnTransformer applica trasformatori diversi a gruppi di colonne diversi, tutto in un unico passaggio che può essere inserito in una pipeline.
Elencare i gruppi di colonne
Per prima cosa decida quali colonne sono numeriche e quali categoriche. Assegnerà a ogni gruppo il proprio trasformatore, indicandone il nome.
num_cols = ['age', 'income']
cat_cols = ['city', 'plan']Eseguire lo scaling dei numeri
In genere le colonne numeriche richiedono uno StandardScaler, così valori grandi e piccoli partono da una base equa prima della modellazione.
from sklearn.preprocessing import StandardScalerCodificare le categorie
Le colonne categoriche devono essere convertite in numeri, quindi utilizzi OneHotEncoder per trasformare ogni categoria in una propria colonna di valori 0/1.
from sklearn.preprocessing import OneHotEncoderCollegare tutto
Ogni elemento è una tupla composta da nome, trasformatore e colonne su cui opera. Il ColumnTransformer li esegue affiancati.
from sklearn.compose import ColumnTransformer
prep = ColumnTransformer([('num', StandardScaler(), num_cols), ('cat', OneHotEncoder(), cat_cols)])Inserirlo in una pipeline
Posizioni il transformer come primo passaggio e un modello come ultimo. Ora la preparazione e la modellazione dei dati di tipo misto vivono in un'unica pipeline.
pipe = Pipeline([('prep', prep), ('model', LogisticRegression())])Colonne rimanenti
Le colonne che non ha elencato vengono eliminate per impostazione predefinita. Imposti remainder su passthrough se vuole mantenere inalterato il resto.
ColumnTransformer([...], remainder='passthrough')Gestire le categorie non viste
I dati di test possono contenere una categoria che non era presente nell'addestramento. Imposti handle_unknown su ignore, così l'encoder la gestisce senza andare in errore.
OneHotEncoder(handle_unknown='ignore')Selezionare le colonne per tipo
Stanco di digitare i nomi delle colonne? make_column_selector seleziona le colonne in base a dtype, così la preparazione si adatta quando la tabella cambia.
from sklearn.compose import make_column_selector as selectorUn fit, entrambi i percorsi
Chiamando fit una sola volta, addestra insieme lo scaler e l'encoder sulle colonne corrette. Ogni percorso apprende solo dalle proprie colonne.
Controllo rapido
Ha colonne numeriche e categoriche che richiedono preparazioni diverse. Che cosa può gestirle?
Riepilogo
Ora può indirizzare le colonne numeriche e categoriche ai rispettivi transformer usando un ColumnTransformer all'interno di un'unica pipeline. Ora passiamo all'ottimizzazione. 🔧
Impara Python con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 30
- Lezioni
- 120
Domande Frequenti
La lezione «ColumnTransformer per tipi misti» è gratuita?
Sì — il testo completo di «ColumnTransformer per tipi misti» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Data Science Academy, passa a CoddyKit PRO. Il corso Data Science Academy include 4 lezioni in totale.
Cosa imparerò in «ColumnTransformer per tipi misti»?
Preparazione diversa per ogni gruppo di colonne. Eserciti Data Science Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Data Science Academy?
Non è richiesta alcuna esperienza precedente. Data Science Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.
Quanto tempo richiede la lezione «ColumnTransformer per tipi misti»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Data Science Academy?
Sì. Ogni lezione Data Science Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Perché le pipeline superano i passaggi manuali
- ColumnTransformer per tipi misti
- Ottimizzare con GridSearchCV
- Salvare e ricaricare una pipeline addestrata