у меня датафрейм выглядит так:
Nickname Vpip% Pfr% Agg Hands
0 -2dV2dA- 25.675676 16.666667 1.187500 222
1 06Hookd 26.470588 16.176471 1.000000 68
2 0spiel2632 23.794212 17.363344 0.750000 311
3 10Pet10 23.214286 7.142857 1.000000 56
4 12022015a 75.000000 NaN NaN 4
5 17bastian 31.034483 6.896552 1.000000 29
6 1990shawn 26.666667 6.666667 0.500000 15
7 199376966 66.666667 25.000000 1.000000 12
8 1MILKSHAKE 75.000000 50.000000 NaN 4
9 1nheritance 30.136986 20.547945 1.000000 73
10 2016deal 63.076923 12.307692 1.142857 65
11 26tj26 43.589744 30.769231 1.333333 39
12 2SMUG4YOU 70.000000 20.000000 1.000000 10
13 320t 71.074380 38.842975 1.410256 121
14 4cheeze126 52.205882 34.926471 0.900000 272
15 67bishop 19.148936 2.127660 1.000000 47
16 777aprilia 23.076923 15.384615 NaN 13
17 77gost77129 17.241379 14.942529 NaN 87
18 7r3m5 19.942197 16.473988 1.111111 346
19 888sharkbait 50.000000 30.769231 0.750000 26
Я хочу сделать еще один столбец в зависимости от значений.
Я использую np.where для установки значений, но он может установить только 2 значения в зависимости от условия.
Мне нужно поставить много ценностей.
Я пытался сделать это с помощью np.where, но он заменял друг друга.
Data['Badge'] = np.where((Data['Hands'] > 30) & (Data['Vpip%'] <= 18.0), 'Rock', np.nan)
Data['Badge'] = np.where((Data['Hands'] > 30) & (Data['Vpip%'] > 60.0), 'Whale', np.nan)
Data['Badge'] = np.where((Data['Hands'] > 30) & (Data['Vpip%'] <= 60.0) & ((Data['Vpip%'] > 40.0)), 'Fish', np.nan)
Data['Badge'] = np.where((Data['Hands'] > 30) & (Data['Vpip%'] <= 40.0) & ((Data['Vpip%'] > 27.0) & (Data['Agg'] < 2.0)), 'Loose Passive', np.nan)
Data['Badge'] = np.where((Data['Hands'] > 30) & (Data['Vpip%'] <= 40.0) & ((Data['Vpip%'] > 27.0) & (Data['Agg'] > 2.0)), 'Loose Aggresive', np.nan)
Есть идеи?