Le DataFrame fourni contient trois colonnes : A, B et C. Le but est de regrouper le DataFrame par colonne A et obtenez une union de chaînes de la colonne C pour chaque groupe.
Par défaut, groupby additionne les colonnes numériques, ce qui ne fonctionne pas pour les chaînes.
Une approche consiste à définir une fonction qui concatène les chaînes au sein de chaque groupe à l'aide de la méthode join :
<code class="python">def f(x): return "{%s}" % ', '.join(x)</code>
Et appliquer cette fonction au DataFrame groupé :
<code class="python">result = df.groupby('A')['C'].apply(f)</code>
Cette approche produit le résultat souhaité :
A 1 {This, string} 2 {is, !} 3 {a} 4 {random}
Une autre option consiste à forcer la somme à concaténer les chaînes en modifiant le type de données :
<code class="python">df['C'] = df['C'].astype(str) result = df.groupby('A')['C'].sum()</code>
Cela également donne le résultat souhaité.
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!