Encodage des nombres entiers

Encodage des nombres entiers

Le codage des nombres entiers consiste à remplacer les catégories par des chiffres de 1 à n (ou de 0 à n-1, selon la mise en œuvre), où n est le nombre de catégories distinctes de la variable.

Les numéros sont attribués de manière arbitraire. Cette méthode d’encodage permet de comparer rapidement les modèles d’apprentissage des machines.

Avantages

  • Simple à mettre en œuvre
  • N’élargit pas l’espace de présentation

Limitations

  • Ne saisit aucune information sur les labels des catégories
  • Ne convient pas aux modèles linéaires.

L’encodage des nombres entiers est mieux adapté aux méthodes non linéaires qui sont capables de naviguer parmi les chiffres attribués arbitrairement pour essayer de trouver des modèles qui les relient à la cible.

Dans cette démo :

Nous allons voir comment effectuer un encodage à chaud avec :

  • Feature-Engine
import numpy as np
import pandas as pd

# to split the datasets
from sklearn.model_selection import train_test_split

# for integer encoding using sklearn
from sklearn.preprocessing import LabelEncoder

# for integer encoding using feature-engine
from feature_engine.categorical_encoders import OrdinalCategoricalEncoder

data = pd.read_csv('../exportfeature.csv',usecols=['place', 'M1', 'M2', 'Hippodrome','idJockey'],sep=";",encoding='ANSI')


data.head()
	place	M1	M2	Hippodrome	idJockey
0	1	3a	3m	Vincennes	18
1	1	3a	9Da	Vincennes	30
2	0	1a	Da	Vincennes	53
3	1	Da	7a	Vincennes	143
4	0	1a	7a	Vincennes	50
# examinons le nombre d'étiquettes de chaque variable

for col in data.columns:
    print(col, ': ', len(data[col].unique()), ' labels')
    
place :  2  labels
M1 :  67  labels
M2 :  71  labels
Hippodrome :  199  labels
idJockey :  1943  labels    
data['M1'].unique()
array(['3a', '1a', 'Da', '8a', '2a', '9a', '4a', '5a', '10a', 'Aa', 'Dm',
       '13a', '7a', '6m', '11a', '6a', '2Da', '0a', '1Disqa', '10m', '3m',
       '3Da', '14a', '5m', '4Dista', '1m', '1Dista', '2Dm', '4Da', '15a',
       '1Da', '10Dista', '3Dista', '5Da', '4m', '6Da', '12a', '0m', '2m',
       '7Da', '8m', '2Dista', 'Rpa', '9m', '7m', '4Disqa', 'Dista',
       '7Dista', '4Distm', '2Dpga', '6Dista', '5Dista', '1Dpga', '1Dm',
       'Am', 'Ta', '16a', '17a', '8Dista', '2Disqa', 'Dpga', '12m', '3Dm',
       '11m', '3Dpga', '9Da', '8Dm'], dtype=object)
data['M2'].unique()
array(['3m', '9Da', 'Da', '7a', '6a', '5a', '2a', '1a', '10a', '3a', '4m',
       '0a', '4a', '8a', '9a', '2m', '14a', 'Aa', '5Da', '5m', 'Dm',
       '7Dista', '12a', '6m', '2Da', '11a', '7m', '15a', '9m', '4Dm',
       '4Dista', '8m', '1Da', '16a', 'Am', 'Dista', '3Da', '3Dista', '1m',
       '1Dista', '0m', '8Dpga', '13a', '1Disqa', '3Disqa', '5Dista',
       '1Dm', '4Da', '3Distm', '10m', '6Da', 'Ta', '2Dpga', '7Da', '13m',
       '2Dista', '1Dpga', '5Dm', '12m', '8Da', '8Dista', '11m', '6Dista',
       '9Dista', '17a', '12Dist.a', '14m', '5Dpga', '2Dm', 'Dpga', '8Dm'],
      dtype=object)
data['Hippodrome'].unique()
array(['Vincennes', 'Wolvega', 'Argentan', 'Toulouse', 'Cagnes-sur-Mer',
       'Mons', 'Cagnes', 'Cordemais', 'Marseille', 'Geelong',
       'Marseille-Vivaux', 'Gelsenkirchen', 'Son Pardo  Majorque',
       'Nantes', 'Lyon', 'Lyon-La Soie', 'Son Pardo', 'Agen',
       'Vienne Krieau', 'Saint', 'Saint-Galmier', 'Bordeaux',
       'Bordeaux  Le Bouscat', 'Mauquenchy', 'Châteaubriant', 'Kuurne',
       'Angers', 'Grenade-sur-Garonne', 'Graignes', 'Laval', 'Vire',
       'Enghien', 'Le Croisé-Laroche', 'Berlin-Mariendorf', 'Avenches',
       'Le Croisé', 'Pontchâteau', 'Chartres', 'Caen', 'Amiens',
       'Munich-Daglfing', 'Machecoul', 'Lyon-Parilly', 'Lisieux',
       'Hyères', 'Fougères', 'Reims', 'Castillonnès', 'Cherbourg',
       'Marseille-Borély', 'Maure', 'Maure-de-Bretagne',
       'Ebreichsdorf (Magna Racino)', 'La Capelle', 'Beaumont', 'Tours',
       'Beaumont-de-Lomagne', 'Tours-Chambray', 'Nort-sur-Erdre',
       'Le Mans', 'Tongres', 'Chatillon', 'Strasbourg',
       'Chatillon-sur-Chalaronne', 'Challans', 'Meslay',
       'Meslay-du-Maine', 'Cavaillon', 'Saint-Malo', 'Rambouillet',
       'Oraison', 'Aby', 'Alençon', 'Cholet', 'Montluçon', 'Nîmes',
       'Vitré', 'Avignon', 'Charlottenlund', 'Paray-le-Monial',
       'Montauban', 'Vichy', 'Laon', 'Villeneuve-sur-Lot', 'Solvalla',
       'Vannes', 'Nancy', 'La Roche', 'La Roche-Posay', 'Frauenfeld',
       'Lignières', 'Saint-Brieuc', 'Chatelaillon',
       'Chatelaillon-La Rochelle', 'Feurs', 'Ostersund', 'Erbray',
       'Marsa', 'Bjerke', 'Kouvola', 'Boden', 'Arras', 'Segré',
       'Duindigt', 'La Gacilly', 'Agon-Coutainville', 'Sablé-sur-Sarthe',
       'Cabourg', 'Pornichet', 'Biarritz', 'Jarlsberg', 'Eauze', 'Arjang',
       'Royan-la Palmyre', 'Mikkeli', 'Clairefontaine',
       'Les Sables-d&#039Olonne', 'Bernay', 'L&#039Isle-sur-La Sorgue',
       'Jägersro', 'Le Touquet', 'Aix-les-Bains', 'Saint-Jean-de-Monts',
       'Carpentras', 'Bréhal', 'Vittel', 'Auch', 'Dieppe',
       'Langon-Libourne', 'Villeréal', 'Zonza', 'Le Mont-Saint-Michel',
       'Craon', 'Montier-en-Der', 'Divonne-les-Bains', 'Bergsaker',
       'Carentan', 'Waregem', 'Ajaccio', 'Baden', 'Ecommoy', 'Angoulême',
       'Salon-de-Provence', 'Castera-Verduzan', 'Eskilstuna', 'Ballarat',
       'Melton', 'Loudéac', 'Vermo', 'Hambourg Bahrenfeld', 'Niort',
       'Dundalk', 'Saint-Omer', 'Montluçon-Néris-les-Bains', 'Straubing',
       'Ostende', 'Dielsdorf', 'Landivisiau', 'Prunelli-di-Fiumorbo',
       'Dinslaken', 'Yonkers-New York', 'Kilmore', 'Saint-Moritz',
       'Hambourg Horn', '(Q+ du mardi 25', 'Moenchengladbach', '<br',
       'lundi 02', '(R1C5) lundi 14', 'Singapour', 'Farjestad',
       'Halmstad', 'Axevalla', 'Gavle', 'Hagmyren', 'Mantorp', 'Orebro',
       'Bollnas', 'Romme', 'Umaker', 'Dannero', 'Rattvik', 'Vaggeryd',
       'Aalborg', 'Leangen', 'Biri', 'Skive', 'Bergen', 'Momarken',
       'Amal', 'Forus', 'Odense', 'Harstad', 'Visby', 'Skelleftea',
       'Kalmar', 'Meadowlands', '(Gr.II) jeudi 12', '(R1C1)  Vendredi 04'],
      dtype=object)
data['idJockey'].unique()
array([   18,    30,    53, ...,  1556, 18318, 20962], dtype=int64)

Encodage des nombres entiers avec Feature-Engine

data['idJockey'] = data['idJockey'].astype(object)

X_train, X_test, y_train, y_test = train_test_split(
    data[['M1', 'M2', 'Hippodrome','idJockey']], 
    data['place'],  
    test_size=0.3,
    random_state=0)  

X_train.shape, X_test.shape

((14352, 4), (6152, 4))
ordinal_enc = OrdinalCategoricalEncoder(
    encoding_method='arbitrary',
    variables=['M1', 'M2', 'Hippodrome','idJockey'])

ordinal_enc.fit(X_train)

# dans le codeur, on peut observer les chiffres
# attribué à chaque catégorie pour toutes les variables indiquées

ordinal_enc.encoder_dict_
{'M1': {'5a': 0,
  '1a': 1,
  '7a': 2,
  '2a': 3,
  '6a': 4,
  '4a': 5,
  '10a': 6,
  '3a': 7,
  '0a': 8,
  'Da': 9,
  'Dm': 10,
  '8a': 11,
  '9m': 12,
  '9a': 13,
  '12a': 14,
  '3Dista': 15,
  '3Da': 16,
  '11a': 17,
  '2Da': 18,
  '1m': 19,
  '4Da': 20,
  '3m': 21,
  '11m': 22,
  'Aa': 23,
  '6Dista': 24,
  '1Dista': 25,
  '14a': 26,
  '5m': 27,
  '13a': 28,
  '17a': 29,
  '15a': 30,
  '1Da': 31,
  '6m': 32,
  '4m': 33,
  '2m': 34,
  '0m': 35,
  '2Dpga': 36,
  '5Da': 37,
  '2Dista': 38,
  '8Dista': 39,
  '12m': 40,
  '2Dm': 41,
  '7m': 42,
  'Am': 43,
  '5Dista': 44,
  'Dista': 45,
  '10m': 46,
  '2Disqa': 47,
  '6Da': 48,
  '7Dista': 49,
  '1Dm': 50,
  '1Disqa': 51,
  '3Dpga': 52,
  '4Dista': 53,
  'Ta': 54,
  '3Dm': 55,
  '4Distm': 56,
  '10Dista': 57,
  '8m': 58,
  '1Dpga': 59,
  '7Da': 60,
  '16a': 61,
  'Rpa': 62},
 'M2': {'5a': 0,
  '3a': 1,
  'Da': 2,
  '0a': 3,
  '4a': 4,
  '2a': 5,
  '1a': 6,
  '6a': 7,
  'Dm': 8,
  '10a': 9,
  '7a': 10,
  '8a': 11,
  '11a': 12,
  '3Dista': 13,
  '9a': 14,
  '13a': 15,
  '14a': 16,
  'Dista': 17,
  '2Dista': 18,
  '12a': 19,
  '6Da': 20,
  '8Da': 21,
  '4m': 22,
  '14m': 23,
  '9m': 24,
  '3Da': 25,
  '1Da': 26,
  '4Da': 27,
  '2m': 28,
  '1m': 29,
  '2Da': 30,
  'Ta': 31,
  '1Dista': 32,
  'Am': 33,
  'Aa': 34,
  '6m': 35,
  '5Dista': 36,
  '3m': 37,
  '2Dpga': 38,
  '15a': 39,
  '7Da': 40,
  '8Dista': 41,
  '8Dm': 42,
  '5Da': 43,
  '8m': 44,
  '5m': 45,
  '16a': 46,
  '10m': 47,
  '2Dm': 48,
  '12Dist.a': 49,
  '11m': 50,
  '1Disqa': 51,
  '4Dista': 52,
  '7m': 53,
  '4Dm': 54,
  '17a': 55,
  '1Dpga': 56,
  '13m': 57,
  '6Dista': 58,
  '3Distm': 59,
  '3Disqa': 60,
  'Dpga': 61,
  '12m': 62,
  '1Dm': 63,
  '9Da': 64,
  '5Dm': 65,
  '0m': 66},
 'Hippodrome': {'Cabourg': 0,
  'Châteaubriant': 1,
  'Vincennes': 2,
  'Agen': 3,
  'Hyères': 4,
  'Chatelaillon-La Rochelle': 5,
  'Laval': 6,
  'Feurs': 7,
  'Pontchâteau': 8,
  'Cherbourg': 9,
  'Enghien': 10,
  'Wolvega': 11,
  'Beaumont-de-Lomagne': 12,
  'Avenches': 13,
  'Craon': 14,
  'Mons': 15,
  'Axevalla': 16,
  'Saint-Brieuc': 17,
  'Lyon-Parilly': 18,
  'Caen': 19,
  'Saint-Malo': 20,
  'Cagnes-sur-Mer': 21,
  'Vichy': 22,
  'Marseille-Vivaux': 23,
  'Toulouse': 24,
  'La Capelle': 25,
  'Bjerke': 26,
  'Marseille-Borély': 27,
  'Argentan': 28,
  'Tongres': 29,
  'Graignes': 30,
  'Ostersund': 31,
  'Strasbourg': 32,
  'Chartres': 33,
  'Mauquenchy': 34,
  'Divonne-les-Bains': 35,
  'Reims': 36,
  'Farjestad': 37,
  'Bordeaux  Le Bouscat': 38,
  'Lyon-La Soie': 39,
  'Le Mans': 40,
  'Sablé-sur-Sarthe': 41,
  'Royan-la Palmyre': 42,
  'Nancy': 43,
  'Bernay': 44,
  'Bergsaker': 45,
  'Marseille': 46,
  'Aby': 47,
  'Amiens': 48,
  'Cholet': 49,
  'Gelsenkirchen': 50,
  'Son Pardo  Majorque': 51,
  'Angers': 52,
  'Solvalla': 53,
  'Les Sables-d&#039Olonne': 54,
  'Munich-Daglfing': 55,
  'Saint-Galmier': 56,
  'Villeneuve-sur-Lot': 57,
  'Nantes': 58,
  'Lisieux': 59,
  'Auch': 60,
  'Forus': 61,
  'Le Croisé-Laroche': 62,
  'Meslay-du-Maine': 63,
  'Maure': 64,
  'Langon-Libourne': 65,
  'Paray-le-Monial': 66,
  'Kalmar': 67,
  'Le Mont-Saint-Michel': 68,
  'Maure-de-Bretagne': 69,
  'Eskilstuna': 70,
  'Vire': 71,
  'Pornichet': 72,
  'Le Touquet': 73,
  'Saint': 74,
  'Boden': 75,
  'Niort': 76,
  'Tours-Chambray': 77,
  'Nîmes': 78,
  'Angoulême': 79,
  'Jägersro': 80,
  'Bordeaux': 81,
  'Straubing': 82,
  'Lignières': 83,
  'Baden': 84,
  'Carpentras': 85,
  'Montier-en-Der': 86,
  'Umaker': 87,
  'Cavaillon': 88,
  'Jarlsberg': 89,
  'Cagnes': 90,
  'Bollnas': 91,
  'Lyon': 92,
  'Cordemais': 93,
  'Arras': 94,
  'Salon-de-Provence': 95,
  'Odense': 96,
  'Aalborg': 97,
  'Bergen': 98,
  'Hagmyren': 99,
  'Halmstad': 100,
  'Avignon': 101,
  'Chatelaillon': 102,
  '(Q+ du mardi 25': 103,
  'Oraison': 104,
  'Ecommoy': 105,
  'Vaggeryd': 106,
  'Duindigt': 107,
  'Orebro': 108,
  'Montauban': 109,
  'Fougères': 110,
  'Waregem': 111,
  'Ajaccio': 112,
  'Saint-Omer': 113,
  'Erbray': 114,
  'Berlin-Mariendorf': 115,
  'Alençon': 116,
  'Skelleftea': 117,
  'Leangen': 118,
  'Marsa': 119,
  'Kuurne': 120,
  'Grenade-sur-Garonne': 121,
  'Aix-les-Bains': 122,
  'Son Pardo': 123,
  'Rattvik': 124,
  'Vermo': 125,
  'Vannes': 126,
  'Dannero': 127,
  'Mantorp': 128,
  'Eauze': 129,
  'Rambouillet': 130,
  'Melton': 131,
  'Vitré': 132,
  'Vittel': 133,
  'Singapour': 134,
  'Biarritz': 135,
  'Challans': 136,
  'Dieppe': 137,
  'Hambourg Horn': 138,
  'Villeréal': 139,
  'Segré': 140,
  'Ebreichsdorf (Magna Racino)': 141,
  'Frauenfeld': 142,
  'Beaumont': 143,
  'Gavle': 144,
  'Agon-Coutainville': 145,
  'L&#039Isle-sur-La Sorgue': 146,
  'Le Croisé': 147,
  'Visby': 148,
  'Castera-Verduzan': 149,
  'Dundalk': 150,
  'Clairefontaine': 151,
  'Yonkers-New York': 152,
  'La Gacilly': 153,
  'Biri': 154,
  'Zonza': 155,
  'Chatillon-sur-Chalaronne': 156,
  'Romme': 157,
  'Bréhal': 158,
  'Chatillon': 159,
  'Hambourg Bahrenfeld': 160,
  'Castillonnès': 161,
  'Skive': 162,
  'Meslay': 163,
  'Arjang': 164,
  'Nort-sur-Erdre': 165,
  'Charlottenlund': 166,
  'Carentan': 167,
  'Saint-Jean-de-Monts': 168,
  'Meadowlands': 169,
  'Montluçon-Néris-les-Bains': 170,
  'Ballarat': 171,
  'Harstad': 172,
  'Kouvola': 173,
  'Landivisiau': 174,
  'La Roche-Posay': 175,
  'Saint-Moritz': 176,
  '(R1C1)  Vendredi 04': 177,
  'Momarken': 178,
  'Montluçon': 179,
  'Geelong': 180,
  'Amal': 181,
  'Mikkeli': 182,
  'Laon': 183,
  'Vienne Krieau': 184,
  'Prunelli-di-Fiumorbo': 185,
  'La Roche': 186,
  'lundi 02': 187,
  'Machecoul': 188,
  'Loudéac': 189,
  'Tours': 190,
  'Dielsdorf': 191,
  'Dinslaken': 192,
  '(R1C5) lundi 14': 193,
  'Ostende': 194},
 'idJockey': {4673: 0,
  4: 1,
  10095: 2,
  220: 3,
  452: 4,
  824: 5,
  388: 6,
  18144: 7,
  140: 8,
  821: 9,
  1192: 10,
  8724: 11,
  56: 12,
  10: 13,
  7706: 14,
  147: 15,
  2988: 16,
  6: 17,
  13: 18,
  534: 19,
  4207: 20,
  3120: 21,
  22189: 22,
  2: 23,
  12: 24,
  9189: 25,
  53: 26,
  156: 27,
  1: 28,
  720: 29,
  143: 30,
  34: 31,
  726: 32,
  1822: 33,
  2230: 34,
  4117: 35,
  1963: 36,
  1241: 37,
  9143: 38,
  2215: 39,
  3: 40,
  522: 41,
  4008: 42,
  743: 43,
  18: 44,
  1594: 45,
  5880: 46,
  890: 47,
  562: 48,
  707: 49,
  4659: 50,
  519: 51,
  1269: 52,
  556: 53,
  14361: 54,
  719: 55,
  424: 56,
  10611: 57,
  3316: 58,
  71: 59,
  1028: 60,
  939: 61,
  170: 62,
  1181: 63,
  538: 64,
  17395: 65,
  223: 66,
  1918: 67,
  9943: 68,
  13380: 69,
  442: 70,
  3151: 71,
  8: 72,
  360: 73,
  152: 74,
  28: 75,
  3139: 76,
  44: 77,
  1931: 78,
  7187: 79,
  734: 80,
  498: 81,
  38: 82,
  439: 83,
  8707: 84,
  728: 85,
  12592: 86,
  1698: 87,
  268: 88,
  560: 89,
  5557: 90,
  1262: 91,
  144: 92,
  5113: 93,
  1860: 94,
  3122: 95,
  1909: 96,
  2504: 97,
  8881: 98,
  8012: 99,
  1000: 100,
  1599: 101,
  1036: 102,
  9099: 103,
  4269: 104,
  618: 105,
  70: 106,
  2982: 107,
  1034: 108,
  411: 109,
  18181: 110,
  1226: 111,
  721: 112,
  153: 113,
  672: 114,
  239: 115,
  3291: 116,
  17495: 117,
  524: 118,
  553: 119,
  29: 120,
  2979: 121,
  1228: 122,
  2345: 123,
  238: 124,
  142: 125,
  2261: 126,
  9541: 127,
  1341: 128,
  825: 129,
  836: 130,
  403: 131,
  1511: 132,
  587: 133,
  1951: 134,
  6291: 135,
  9843: 136,
  4708: 137,
  1087: 138,
  3224: 139,
  4577: 140,
  163: 141,
  1736: 142,
  3620: 143,
  31: 144,
  171: 145,
  983: 146,
  1171: 147,
  554: 148,
  3778: 149,
  8709: 150,
  177: 151,
  2862: 152,
  805: 153,
  4747: 154,
  9315: 155,
  8184: 156,
  5: 157,
  17955: 158,
  1880: 159,
  6003: 160,
  149: 161,
  18328: 162,
  5166: 163,
  6182: 164,
  1560: 165,
  4022: 166,
  1054: 167,
  1316: 168,
  729: 169,
  2236: 170,
  2237: 171,
  1359: 172,
  620: 173,
  37: 174,
  178: 175,
  148: 176,
  9054: 177,
  822: 178,
  1796: 179,
  616: 180,
  3320: 181,
  958: 182,
  504: 183,
  2581: 184,
  5963: 185,
  1196: 186,
  3571: 187,
  5075: 188,
  708: 189,
  3145: 190,
  9161: 191,
  15: 192,
  1183: 193,
  5867: 194,
  8269: 195,
  8205: 196,
  157: 197,
  8142: 198,
  1555: 199,
  7252: 200,
  21436: 201,
  827: 202,
  162: 203,
  62: 204,
  970: 205,
  1330: 206,
  2484: 207,
  176: 208,
  2291: 209,
  1250: 210,
  497: 211,
  8173: 212,
  7122: 213,
  21: 214,
  20729: 215,
  979: 216,
  1038: 217,
  837: 218,
  406: 219,
  296: 220,
  9114: 221,
  8156: 222,
  7343: 223,
  22: 224,
  14450: 225,
  2077: 226,
  3282: 227,
  718: 228,
  6412: 229,
  1573: 230,
  1898: 231,
  17353: 232,
  1266: 233,
  2284: 234,
  18232: 235,
  542: 236,
  784: 237,
  5361: 238,
  1883: 239,
  3383: 240,
  17537: 241,
  8265: 242,
  2506: 243,
  564: 244,
  17457: 245,
  6934: 246,
  4230: 247,
  4211: 248,
  383: 249,
  500: 250,
  17917: 251,
  1930: 252,
  69: 253,
  418: 254,
  10567: 255,
  1060: 256,
  246: 257,
  5876: 258,
  3190: 259,
  7790: 260,
  924: 261,
  589: 262,
  363: 263,
  17463: 264,
  2921: 265,
  785: 266,
  3087: 267,
  11019: 268,
  3054: 269,
  3637: 270,
  373: 271,
  945: 272,
  1596: 273,
  6962: 274,
  5584: 275,
  1337: 276,
  3061: 277,
  2360: 278,
  7830: 279,
  744: 280,
  725: 281,
  541: 282,
  3286: 283,
  706: 284,
  623: 285,
  3986: 286,
  513: 287,
  227: 288,
  941: 289,
  4480: 290,
  9676: 291,
  640: 292,
  3032: 293,
  1705: 294,
  17894: 295,
  398: 296,
  1866: 297,
  400: 298,
  5862: 299,
  234: 300,
  8785: 301,
  9170: 302,
  52: 303,
  3376: 304,
  1446: 305,
  1528: 306,
  3287: 307,
  237: 308,
  1904: 309,
  537: 310,
  1237: 311,
  2359: 312,
  417: 313,
  17367: 314,
  8151: 315,
  361: 316,
  787: 317,
  3708: 318,
  1785: 319,
  3969: 320,
  563: 321,
  151: 322,
  5010: 323,
  385: 324,
  1760: 325,
  1014: 326,
  596: 327,
  619: 328,
  1634: 329,
  819: 330,
  903: 331,
  410: 332,
  2028: 333,
  2301: 334,
  710: 335,
  1019: 336,
  18234: 337,
  50: 338,
  989: 339,
  1581: 340,
  2096: 341,
  19557: 342,
  3214: 343,
  8622: 344,
  621: 345,
  402: 346,
  219: 347,
  4119: 348,
  19061: 349,
  236: 350,
  164: 351,
  1595: 352,
  9: 353,
  4180: 354,
  799: 355,
  17501: 356,
  6634: 357,
  7018: 358,
  3596: 359,
  167: 360,
  7703: 361,
  11937: 362,
  3366: 363,
  655: 364,
  63: 365,
  1311: 366,
  3550: 367,
  19940: 368,
  2549: 369,
  4591: 370,
  736: 371,
  17959: 372,
  810: 373,
  5877: 374,
  64: 375,
  528: 376,
  6789: 377,
  13701: 378,
  22857: 379,
  953: 380,
  7278: 381,
  16: 382,
  4316: 383,
  893: 384,
  5940: 385,
  6761: 386,
  972: 387,
  4317: 388,
  3290: 389,
  904: 390,
  5987: 391,
  2233: 392,
  2442: 393,
  1961: 394,
  2840: 395,
  1696: 396,
  3413: 397,
  550: 398,
  6926: 399,
  67: 400,
  3138: 401,
  51: 402,
  4762: 403,
  1713: 404,
  3045: 405,
  3088: 406,
  18354: 407,
  4160: 408,
  8052: 409,
  18547: 410,
  17595: 411,
  1310: 412,
  2775: 413,
  150: 414,
  2576: 415,
  3194: 416,
  55: 417,
  4340: 418,
  2619: 419,
  1942: 420,
  3459: 421,
  536: 422,
  20117: 423,
  2650: 424,
  17377: 425,
  5690: 426,
  902: 427,
  2568: 428,
  3985: 429,
  3674: 430,
  7247: 431,
  3769: 432,
  7997: 433,
  4416: 434,
  2701: 435,
  731: 436,
  451: 437,
  19: 438,
  4486: 439,
  7536: 440,
  1784: 441,
  8064: 442,
  376: 443,
  421: 444,
  1433: 445,
  2829: 446,
  139: 447,
  256: 448,
  1057: 449,
  14: 450,
  14683: 451,
  2299: 452,
  427: 453,
  175: 454,
  2240: 455,
  8877: 456,
  21902: 457,
  3558: 458,
  2920: 459,
  6501: 460,
  578: 461,
  9710: 462,
  450: 463,
  3418: 464,
  3121: 465,
  5462: 466,
  558: 467,
  494: 468,
  275: 469,
  7063: 470,
  740: 471,
  3639: 472,
  9196: 473,
  971: 474,
  795: 475,
  6306: 476,
  2362: 477,
  1816: 478,
  9471: 479,
  3234: 480,
  4681: 481,
  7379: 482,
  26: 483,
  2041: 484,
  517: 485,
  1598: 486,
  359: 487,
  9962: 488,
  5824: 489,
  3435: 490,
  10102: 491,
  1415: 492,
  21274: 493,
  1022: 494,
  3375: 495,
  2155: 496,
  18002: 497,
  2665: 498,
  9173: 499,
  1703: 500,
  2710: 501,
  9172: 502,
  1563: 503,
  8295: 504,
  629: 505,
  576: 506,
  490: 507,
  448: 508,
  5579: 509,
  21440: 510,
  551: 511,
  21552: 512,
  3328: 513,
  2183: 514,
  19018: 515,
  2120: 516,
  145: 517,
  2073: 518,
  8180: 519,
  1344: 520,
  566: 521,
  4476: 522,
  515: 523,
  918: 524,
  290: 525,
  377: 526,
  7: 527,
  1147: 528,
  3658: 529,
  891: 530,
  7940: 531,
  3911: 532,
  7831: 533,
  2349: 534,
  65: 535,
  252: 536,
  428: 537,
  8403: 538,
  8023: 539,
  17998: 540,
  4129: 541,
  7931: 542,
  248: 543,
  1002: 544,
  942: 545,
  18635: 546,
  5887: 547,
  12886: 548,
  13382: 549,
  7178: 550,
  2368: 551,
  652: 552,
  1321: 553,
  3144: 554,
  501: 555,
  1430: 556,
  4204: 557,
  3625: 558,
  8834: 559,
  4790: 560,
  3982: 561,
  4496: 562,
  2748: 563,
  6944: 564,
  1064: 565,
  4362: 566,
  9158: 567,
  1346: 568,
  20074: 569,
  4703: 570,
  2805: 571,
  3830: 572,
  5092: 573,
  8869: 574,
  8535: 575,
  15426: 576,
  1720: 577,
  1496: 578,
  2537: 579,
  3931: 580,
  24: 581,
  16865: 582,
  425: 583,
  512: 584,
  12715: 585,
  1975: 586,
  19412: 587,
  4364: 588,
  455: 589,
  2403: 590,
  1728: 591,
  2033: 592,
  9150: 593,
  525: 594,
  2259: 595,
  793: 596,
  826: 597,
  21223: 598,
  13161: 599,
  4126: 600,
  4951: 601,
  3420: 602,
  713: 603,
  19325: 604,
  1541: 605,
  14118: 606,
  507: 607,
  3283: 608,
  17475: 609,
  10900: 610,
  909: 611,
  3142: 612,
  2660: 613,
  9282: 614,
  378: 615,
  1819: 616,
  6185: 617,
  1922: 618,
  19076: 619,
  8728: 620,
  461: 621,
  6444: 622,
  260: 623,
  5435: 624,
  986: 625,
  549: 626,
  13564: 627,
  6009: 628,
  2550: 629,
  2312: 630,
  20288: 631,
  829: 632,
  21685: 633,
  1153: 634,
  8393: 635,
  1636: 636,
  514: 637,
  3718: 638,
  11322: 639,
  7109: 640,
  7175: 641,
  1008: 642,
  18680: 643,
  17957: 644,
  5578: 645,
  20: 646,
  1331: 647,
  5835: 648,
  1753: 649,
  3829: 650,
  245: 651,
  1872: 652,
  2399: 653,
  244: 654,
  1702: 655,
  358: 656,
  2778: 657,
  4443: 658,
  4855: 659,
  7366: 660,
  4500: 661,
  1307: 662,
  6929: 663,
  4174: 664,
  14949: 665,
  3659: 666,
  9135: 667,
  265: 668,
  9497: 669,
  14149: 670,
  9157: 671,
  6293: 672,
  12003: 673,
  30: 674,
  4707: 675,
  5332: 676,
  9478: 677,
  47: 678,
  1893: 679,
  443: 680,
  3289: 681,
  917: 682,
  9436: 683,
  8166: 684,
  1820: 685,
  5679: 686,
  4349: 687,
  1358: 688,
  753: 689,
  6656: 690,
  407: 691,
  2327: 692,
  4016: 693,
  7016: 694,
  18537: 695,
  74: 696,
  3124: 697,
  4021: 698,
  2380: 699,
  1916: 700,
  2693: 701,
  4331: 702,
  3503: 703,
  1049: 704,
  1198: 705,
  1281: 706,
  954: 707,
  6126: 708,
  48: 709,
  3226: 710,
  4595: 711,
  8740: 712,
  4024: 713,
  269: 714,
  817: 715,
  5997: 716,
  16992: 717,
  1079: 718,
  1308: 719,
  3211: 720,
  1742: 721,
  544: 722,
  994: 723,
  937: 724,
  3136: 725,
  8351: 726,
  308: 727,
  3210: 728,
  1302: 729,
  4148: 730,
  1985: 731,
  11200: 732,
  2067: 733,
  12338: 734,
  2404: 735,
  510: 736,
  1426: 737,
  987: 738,
  6862: 739,
  2144: 740,
  2639: 741,
  1020: 742,
  1840: 743,
  279: 744,
  2991: 745,
  7370: 746,
  20282: 747,
  1764: 748,
  18907: 749,
  288: 750,
  16587: 751,
  2846: 752,
  14507: 753,
  6010: 754,
  9194: 755,
  445: 756,
  2241: 757,
  1445: 758,
  3632: 759,
  8027: 760,
  5325: 761,
  20483: 762,
  833: 763,
  489: 764,
  4483: 765,
  1424: 766,
  7296: 767,
  1896: 768,
  13311: 769,
  9218: 770,
  641: 771,
  797: 772,
  5795: 773,
  9630: 774,
  738: 775,
  17512: 776,
  4206: 777,
  3355: 778,
  18621: 779,
  1437: 780,
  42: 781,
  531: 782,
  17585: 783,
  18948: 784,
  22228: 785,
  2347: 786,
  22336: 787,
  222: 788,
  21642: 789,
  8821: 790,
  9892: 791,
  4968: 792,
  21190: 793,
  6828: 794,
  8356: 795,
  9804: 796,
  169: 797,
  5609: 798,
  4470: 799,
  5296: 800,
  2203: 801,
  4630: 802,
  7693: 803,
  6399: 804,
  9239: 805,
  4742: 806,
  1637: 807,
  3306: 808,
  4705: 809,
  9848: 810,
  552: 811,
  19245: 812,
  160: 813,
  502: 814,
  1565: 815,
  2174: 816,
  3624: 817,
  20259: 818,
  5992: 819,
  18588: 820,
  6582: 821,
  21454: 822,
  6987: 823,
  415: 824,
  15391: 825,
  2538: 826,
  382: 827,
  18876: 828,
  3787: 829,
  3233: 830,
  13705: 831,
  2054: 832,
  20747: 833,
  1536: 834,
  16741: 835,
  2235: 836,
  172: 837,
  5392: 838,
  5654: 839,
  434: 840,
  3025: 841,
  11158: 842,
  2143: 843,
  7279: 844,
  749: 845,
  1899: 846,
  7822: 847,
  4246: 848,
  11411: 849,
  2729: 850,
  3225: 851,
  18022: 852,
  16529: 853,
  5540: 854,
  938: 855,
  146: 856,
  818: 857,
  8826: 858,
  657: 859,
  5008: 860,
  1811: 861,
  158: 862,
  584: 863,
  66: 864,
  3288: 865,
  735: 866,
  1047: 867,
  1186: 868,
  10079: 869,
  8962: 870,
  5958: 871,
  1921: 872,
  4634: 873,
  6099: 874,
  9587: 875,
  39: 876,
  3116: 877,
  4724: 878,
  4711: 879,
  823: 880,
  5701: 881,
  17370: 882,
  957: 883,
  1714: 884,
  18760: 885,
  2108: 886,
  5458: 887,
  19603: 888,
  1088: 889,
  1577: 890,
  27: 891,
  2961: 892,
  2634: 893,
  7326: 894,
  6144: 895,
  36: 896,
  3162: 897,
  4307: 898,
  709: 899,
  386: 900,
  3344: 901,
  1239: 902,
  530: 903,
  2444: 904,
  2924: 905,
  4072: 906,
  18293: 907,
  3560: 908,
  15567: 909,
  3657: 910,
  4380: 911,
  7677: 912,
  527: 913,
  4471: 914,
  17362: 915,
  8760: 916,
  1050: 917,
  17999: 918,
  3502: 919,
  7006: 920,
  9639: 921,
  5704: 922,
  4097: 923,
  15930: 924,
  931: 925,
  14491: 926,
  9100: 927,
  5683: 928,
  15815: 929,
  1897: 930,
  6072: 931,
  900: 932,
  4973: 933,
  922: 934,
  3123: 935,
  8726: 936,
  2638: 937,
  280: 938,
  4179: 939,
  408: 940,
  4655: 941,
  454: 942,
  998: 943,
  7284: 944,
  9045: 945,
  23218: 946,
  952: 947,
  1755: 948,
  11730: 949,
  3896: 950,
  293: 951,
  1104: 952,
  1576: 953,
  433: 954,
  17431: 955,
  2210: 956,
  6402: 957,
  2578: 958,
  5804: 959,
  1033: 960,
  1710: 961,
  271: 962,
  1923: 963,
  307: 964,
  1529: 965,
  6858: 966,
  8939: 967,
  3622: 968,
  2065: 969,
  3954: 970,
  1442: 971,
  6964: 972,
  20380: 973,
  1863: 974,
  4962: 975,
  4702: 976,
  925: 977,
  15032: 978,
  9232: 979,
  5653: 980,
  264: 981,
  2167: 982,
  2629: 983,
  1557: 984,
  3614: 985,
  820: 986,
  1791: 987,
  6577: 988,
  1701: 989,
  3046: 990,
  7811: 991,
  2635: 992,
  1571: 993,
  9878: 994,
  18438: 995,
  955: 996,
  505: 997,
  9191: 998,
  17435: 999,
  ...}}
# voici la liste des variables que le codeur va transformer

ordinal_enc.variables

['M1', 'M2', 'Hippodrome', 'idJockey']
X_train = ordinal_enc.transform(X_train)
X_test = ordinal_enc.transform(X_test)

# explorons le résultat
X_train.head()
	M1	M2	Hippodrome	idJockey
2540	0	0	0	0
19008	1	1	1	1
7624	2	2	2	2
2575	3	3	0	3
852	4	0	3	4

Note

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.

GCH anime

Je télécharge mon guide gratuit

Vous recevrez votre guide par email sans aucun engagement de votre part.

Si vous voulez découvrir comment fonctionne la librairie pandas ou bien l’environnement Jupyter, n’hésitez pas à consulter les cours ci-dessous.

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.