#Nutzungsdaten
df
| name | room_type | |
|---|---|---|
| 0 | Hotel A. | Superior Zweibettzimmer Nichtraucher | 
| 1 | Hotel B. | Superior Zweibettzimmer Rauchen | 
| 2 | Hotel C. | Deluxe Zweibettzimmer | 
| 3 | Hotel D. | Standard Zweibettzimmer Nichtraucher | 
| 4 | Hotel E. | Ein Doppelzimmer | 
| 5 | Hotel F. | Deluxe Doppelzimmer Nichtraucherzimmer | 
| 6 | Hotel G. | Standard Zweibettzimmer Nichtraucher | 
| 7 | Hotel H. | Deluxe King Zimmer | 
Ich habe so etwas vorbereitet.
Goal
Erstellen Sie eine neue Spalte mit room_type plus 1 für diejenigen mit den Namen "Superior" und "Deluxe" und 0 für diejenigen, die dies nicht tun.
new_room_type_list = []
for i in range(8):
    if 'Überlegen' in df['room_type'][i]:
        a = 1
    elif 'Deluxe' in df['room_type'][i]:
        a = 1
    else:
        a = 0
    new_room_type_list.append(a)
Erstellen Sie eine Liste wie diese Dann füge es zu df hinzu.
#neu erstellt in df_room_type_Liste df['new_room_type']Hinzufügen Als.
df['new_room_type'] = new_room_type_list
Ich werde überprüfen
df
| name | room_type | new_room_type | |
|---|---|---|---|
| 0 | Hotel A. | Superior Zweibettzimmer Nichtraucher | 1 | 
| 1 | Hotel B. | Superior Zweibettzimmer Rauchen | 1 | 
| 2 | Hotel C. | Deluxe Zweibettzimmer | 1 | 
| 3 | Hotel D. | Standard Zweibettzimmer Nichtraucher | 0 | 
| 4 | Hotel E. | Ein Doppelzimmer | 0 | 
| 5 | Hotel F. | Deluxe Doppelzimmer Nichtraucherzimmer | 1 | 
| 6 | Hotel G. | Standard Zweibettzimmer Nichtraucher | 0 | 
| 7 | Hotel H. | Deluxe King Zimmer | 1 | 
Ich konnte es so hinzufügen.
df['room_type'].str.contains('Überlegen')
0 True 1 True 2 False 3 False 4 False 5 False 6 False 7 False Name: room_type, dtype: bool
Auf diese Weise können Sie sehen, in welcher Zeile der Vorgesetzte angezeigt wird. Da jedoch .str.contains () den gesamten DataFrame abdeckt, ist es nicht für if-Anweisungen geeignet, die sich auf jede Zeile beziehen Mit der Methode
Recommended Posts