Pourquoi la méthode replace() ne remplace-t-elle pas les valeurs dans mon DataFrame Pandas ?
Malgré la tentative de remplacer des chaînes spécifiques par NaN de manière simple DataFrame, la méthode replace() semble inefficace. Par exemple :
<code class="python">d = {'color' : pd.Series(['white', 'blue', 'orange']), 'second_color': pd.Series(['white', 'black', 'blue']), 'value' : pd.Series([1., 2., 3.])} df = pd.DataFrame(d) df.replace('white', np.nan)</code>
Le résultat attendu, avec les valeurs « blanches » remplacées par NaN, n'est pas atteint. Au lieu de cela, le DataFrame reste inchangé.
Une solution : activez les remplacements partiels avec regex=True
Par défaut, la méthode replace() effectue des remplacements de chaînes complètes. Pour activer les remplacements partiels, le paramètre regex doit être défini sur True. Ce petit ajustement nous permet de remplacer des chaînes spécifiques n'importe où dans le DataFrame :
<code class="python">df.replace('white', np.nan, regex=True)</code>
Avec cette modification, le DataFrame remplacera correctement toutes les instances de « blanc » par NaN.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!