Regressione logistica in Python - Ristrutturazione dei dati

Ogni volta che un'organizzazione conduce un sondaggio, cerca di raccogliere quante più informazioni possibili dal cliente, con l'idea che queste informazioni sarebbero utili all'organizzazione in un modo o nell'altro, in un secondo momento. Per risolvere il problema attuale, dobbiamo raccogliere le informazioni che sono direttamente rilevanti per il nostro problema.

Visualizzazione di tutti i campi

Vediamo ora come selezionare i campi dati a noi utili. Eseguire la seguente istruzione nell'editor di codice.

In [6]: print(list(df.columns))

Vedrai il seguente output:

['age', 'job', 'marital', 'education', 'default', 'housing', 'loan', 
'contact', 'month', 'day_of_week', 'duration', 'campaign', 'pdays', 
'previous', 'poutcome', 'emp_var_rate', 'cons_price_idx', 'cons_conf_idx', 
'euribor3m', 'nr_employed', 'y']

L'output mostra i nomi di tutte le colonne nel database. L'ultima colonna "y" è un valore booleano che indica se questo cliente ha un deposito a termine presso la banca. I valori di questo campo sono "y" o "n". È possibile leggere la descrizione e lo scopo di ciascuna colonna nel file banks-name.txt che è stato scaricato come parte dei dati.

Eliminazione di campi indesiderati

Esaminando i nomi delle colonne, saprai che alcuni campi non hanno alcun significato per il problema in questione. Ad esempio, campi comemonth, day_of_week, campagna, ecc. non ci servono. Elimineremo questi campi dal nostro database. Per rilasciare una colonna, usiamo il comando drop come mostrato di seguito -

In [8]: #drop columns which are not needed.
   df.drop(df.columns[[0, 3, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 19]], 
   axis = 1, inplace = True)

Il comando dice che rilascia la colonna numero 0, 3, 7, 8 e così via. Per assicurarti che l'indice sia selezionato correttamente, usa la seguente dichiarazione:

In [7]: df.columns[9]
Out[7]: 'day_of_week'

Stampa il nome della colonna per l'indice specificato.

Dopo aver eliminato le colonne che non sono richieste, esamina i dati con l'istruzione head. L'output dello schermo è mostrato qui -

In [9]: df.head()
Out[9]:
      job   marital  default  housing  loan  poutcome    y
0     blue-collar    married  unknown yes no nonexistent 0
1     technician     married  no    no    no nonexistent 0
2     management     single   no    yes   no success     1
3     services       married  no    no    no nonexistent 0
4     retired        married  no    yes   no success     1

Ora, abbiamo solo i campi che riteniamo importanti per la nostra analisi e previsione dei dati. L'importanza diData Scientistentra in scena a questo punto. Il data scientist deve selezionare le colonne appropriate per la costruzione del modello.

Ad esempio, il tipo di jobanche se a prima vista potrebbe non convincere tutti per l'inclusione nel database, sarà un campo molto utile. Non tutti i tipi di clienti apriranno il TD. Le persone a reddito inferiore potrebbero non aprire i TD, mentre le persone a reddito più alto di solito parcheggiano i loro soldi in eccesso in TD. Quindi il tipo di lavoro diventa significativamente rilevante in questo scenario. Allo stesso modo, seleziona attentamente le colonne che ritieni siano rilevanti per la tua analisi.

Nel prossimo capitolo prepareremo i nostri dati per costruire il modello.