Dans le codage du comptage, nous remplaçons les catégories par le comptage des observations qui montrent cette catégorie dans l’ensemble de données. De même, nous pouvons remplacer la catégorie par la fréquence – ou le pourcentage – des observations dans l’ensemble de données. C’est-à-dire que si 10 de nos 100 observations montrent la couleur bleue, nous remplacerons le bleu par 10 si nous effectuons le codage du comptage, ou par 0,1 si nous le remplaçons par la fréquence. Ces techniques permettent de saisir la représentation de chaque étiquette dans un ensemble de données, mais le codage ne permet pas nécessairement de prédire le résultat. Il s’agit toutefois de méthodes de codage très populaires dans les concours Kaggle.
L’hypothèse de cette technique est que le nombre d’observations indiqué par chaque variable est quelque peu révélateur du pouvoir prédictif de la catégorie.
Avantages
- Simple
- N’élargit pas l’espace de présentation
Inconvénients
- Si deux catégories différentes apparaissent le même nombre de fois dans l’ensemble de données, c’est-à-dire qu’elles apparaissent dans le même nombre d’observations, elles seront remplacées par le même nombre : elles peuvent perdre des informations précieuses.
Par exemple, s’il y a 10 observations pour la catégorie bleue et 10 observations pour la catégorie rouge, les deux seront remplacées par 10, et donc, après l’encodage, elles apparaîtront comme étant la même chose.
Dans cette démo :
Nous allons voir comment effectuer le comptage ou l’encodage de fréquence avec :
- Pandas
- Feature-Engine
Important
Lors de la transformation du comptage des variables catégorielles, il est important de calculer le comptage (ou la fréquence = comptage / total des observations) sur l’ensemble d’entrainement, puis d’utiliser ces nombres pour remplacer les étiquettes dans l’ensemble de test.
Comptage et encodage des fréquences avec pandas
Le dictionnaire contient le nombre d’observations par catégorie dans M1.
Utilisation avec Feature-Engine
**Note
Si la variable argument est laissée à None, le codeur identifiera automatiquement toutes les variables catégorielles.
Le codeur ne codera pas les variables numériques. Donc, si certaines de vos variables numériques sont en fait des catégories, vous devrez les reformuler en tant qu’objet avant d’utiliser le codeur.
Notez que s’il y a une variable dans le jeu de test, pour laquelle l’encodeur n’a pas de numéro à attribuer (la catégorie n’a pas été vue dans le jeu de train), l’encodeur retournera une erreur.
Je télécharge mon guide gratuit
Thank you!
You have successfully joined our subscriber list.
Vous recevrez votre guide par email sans aucun engagement de votre part.