Le mappage des valeurs d'un dictionnaire vers une nouvelle colonne dans un DataFrame Pandas peut être une tâche fastidieuse. Bien que la fonction equiv() ne soit pas appelable dans le code fourni, il existe des méthodes alternatives pour atteindre cet objectif.
Une approche efficace consiste à utiliser la fonction map() conjointement avec le dictionnaire. L'extrait de code suivant montre comment attribuer des valeurs mappées d'équiv à une nouvelle colonne « B » dans le DataFrame df :
<code class="python">import pandas as pd equiv = {7001:1, 8001:2, 9001:3} df = pd.DataFrame({"A": [7001, 8001, 9001]}) df["B"] = df["A"].map(equiv)</code>
En passant à la fonction map() une expression lambda qui fait référence au dictionnaire d'équiv, le Le code ajoute avec succès une nouvelle colonne "B" avec les valeurs mappées correspondantes.
<code class="python">df["B"] = df["A"].map(lambda x: equiv[x])</code>
Le résultat est un DataFrame avec la colonne "B" souhaitée, contenant les valeurs mappées :
A B 0 7001 1 1 8001 2 2 9001 3
Cette méthode gère gracieusement les clés manquantes dans le dictionnaire, ce qui entraîne des valeurs NaN dans la nouvelle colonne.
<code class="python">import pandas as pd equiv = {7001:1, 8001:2, 9001:3} df = pd.DataFrame({"A": [7001, 8001, 9001, 10000]}) df["B"] = df["A"].map(equiv) print(df) A B 0 7001 1 1 8001 2 2 9001 3 3 10000 NaN</code>
En résumé, l'utilisation de la fonction map() offre un moyen simple et efficace d'ajouter des colonnes avec des valeurs mappées à partir de dictionnaires dans Pandas DataFrames.
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!