Régression logistique en Python - Restructuration des données

Chaque fois qu'une organisation mène une enquête, elle essaie de collecter autant d'informations que possible auprès du client, avec l'idée que ces informations seraient utiles à l'organisation d'une manière ou d'une autre, à un moment ultérieur. Pour résoudre le problème actuel, nous devons récupérer les informations directement pertinentes à notre problème.

Affichage de tous les champs

Voyons maintenant comment sélectionner les champs de données qui nous sont utiles. Exécutez l'instruction suivante dans l'éditeur de code.

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

Vous verrez la sortie suivante -

['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']

La sortie affiche les noms de toutes les colonnes de la base de données. La dernière colonne «y» est une valeur booléenne indiquant si ce client a un dépôt à terme auprès de la banque. Les valeurs de ce champ sont «y» ou «n». Vous pouvez lire la description et le but de chaque colonne dans le fichier banks-name.txt qui a été téléchargé dans le cadre des données.

Élimination des champs indésirables

En examinant les noms des colonnes, vous saurez que certains des champs n'ont aucune signification pour le problème en question. Par exemple, des champs tels quemonth, day_of_week, campagne, etc. ne nous sont d'aucune utilité. Nous éliminerons ces champs de notre base de données. Pour supprimer une colonne, nous utilisons la commande drop comme indiqué ci-dessous -

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)

La commande indique que supprimer la colonne numéro 0, 3, 7, 8, etc. Pour vous assurer que l'index est correctement sélectionné, utilisez l'instruction suivante -

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

Cela imprime le nom de la colonne pour l'index donné.

Après avoir supprimé les colonnes qui ne sont pas requises, examinez les données avec l'instruction head. La sortie d'écran est affichée ici -

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

Désormais, nous n'avons que les champs qui nous semblent importants pour notre analyse et nos prévisions de données. L'importance deData Scientistentre en image à cette étape. Le data scientist doit sélectionner les colonnes appropriées pour la construction du modèle.

Par exemple, le type de jobbien qu'à première vue, cela ne convainc pas tout le monde de l'inclure dans la base de données, ce sera un champ très utile. Tous les types de clients n'ouvriront pas le TD. Les personnes à faible revenu peuvent ne pas ouvrir les DT, tandis que les personnes à revenu élevé placent généralement leur argent excédentaire dans des DT. Le type d'emploi devient donc significativement pertinent dans ce scénario. De même, sélectionnez soigneusement les colonnes qui vous semblent pertinentes pour votre analyse.

Dans le chapitre suivant, nous préparerons nos données pour construire le modèle.