Si ios_score> 0,5 et android_score <0,5, regroupez-les comme "utilisateur iOS" dans la colonne de sortie. si ios_score <0.5 et android_score> 0.5, regroupez-les comme "utilisateur Android" dans ...

0
Kevin 17 mars 2021 à 00:03

1 réponse

Meilleure réponse

Avec np.select, vous pouvez spécifier une liste de conditions à vérifier et une liste de valeurs à afficher si les conditions respectives correspondent:

df['Output'] = np.select([
        ((df['ios_score'] > 0.5) & (df['android_score'] > 0.5)),
        (df['ios_score'] > 0.5),
        (df['android_score'] > 0.5)],
    ['iOS + Android', 'iOS', 'Android'], default='Other')

df

Production:

  names  ios_score  android_score         Output
0    A1   0.428571       0.571429        Android
1    A2   0.541667       0.708333  iOS + Android
2    A3   0.333333       0.485714          Other
1
perl 16 mars 2021 à 21:20