#Des données d'utilisation
df
name | room_type | |
---|---|---|
0 | Hôtel A | Chambre Twin Supérieure Non-Fumeur |
1 | Hôtel B | Chambre twin supérieure fumeur |
2 | Hôtel C | Chambre Twin Deluxe |
3 | Hôtel D | Chambre twin standard non-fumeur |
4 | Hôtel E | Une chambre double |
5 | Hôtel F | Chambre Double de Luxe Non-Fumeur |
6 | Hôtel G | Chambre twin standard non-fumeur |
7 | Hôtel H | Chambre King Deluxe |
J'ai préparé quelque chose comme ça.
Goal
Créez une nouvelle colonne avec room_type plus 1 pour celles nommées "Supérieur" et "Deluxe", et 0 pour celles qui ne le font pas.
new_room_type_list = []
for i in range(8):
if 'Supérieur' in df['room_type'][i]:
a = 1
elif 'De luxe' in df['room_type'][i]:
a = 1
else:
a = 0
new_room_type_list.append(a)
Créez une liste comme celle-ci Ensuite, ajoutez-le à df.
#nouveau créé dans df_room_type_liste df['new_room_type']Ajouter en tant que.
df['new_room_type'] = new_room_type_list
je vérifierai
df
name | room_type | new_room_type | |
---|---|---|---|
0 | Hôtel A | Chambre Twin Supérieure Non-Fumeur | 1 |
1 | Hôtel B | Chambre twin supérieure fumeur | 1 |
2 | Hôtel C | Chambre Twin Deluxe | 1 |
3 | Hôtel D | Chambre twin standard non-fumeur | 0 |
4 | Hôtel E | Une chambre double | 0 |
5 | Hôtel F | Chambre Double de Luxe Non-Fumeur | 1 |
6 | Hôtel G | Chambre twin standard non-fumeur | 0 |
7 | Hôtel H | Chambre King Deluxe | 1 |
J'ai pu l'ajouter comme ça.
df['room_type'].str.contains('Supérieur')
0 True 1 True 2 False 3 False 4 False 5 False 6 False 7 False Name: room_type, dtype: bool
De cette façon, vous pouvez voir dans quelle ligne le "supérieur" apparaît, mais comme .str.contains () couvre l'intégralité du DataFrame, il ne convient pas aux instructions if qui regardent chaque ligne, donc ce qui précède Utiliser la méthode
Recommended Posts