Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Replizieren von GROUP_CONCAT für pandas.DataFrame

Gehen Sie wie folgt vor:

df.groupby('team').apply(lambda x: ','.join(x.user))

um eine Series zu erhalten von Strings oder

df.groupby('team').apply(lambda x: list(x.user))

um eine Series zu erhalten von list s von Zeichenfolgen.

So sehen die Ergebnisse aus:

In [33]: df.groupby('team').apply(lambda x: ', '.join(x.user))
Out[33]:
team
a       elmer, daffy, bugs, foghorn, goofy, marvin
b                               dawg, speedy, pepe
c                                   petunia, porky
dtype: object

In [34]: df.groupby('team').apply(lambda x: list(x.user))
Out[34]:
team
a       [elmer, daffy, bugs, foghorn, goofy, marvin]
b                               [dawg, speedy, pepe]
c                                   [petunia, porky]
dtype: object

Beachten Sie, dass im Allgemeinen alle weiteren Operationen auf diesen Arten von Series werden langsam sein und werden im Allgemeinen entmutigt. Wenn es eine andere Möglichkeit gibt, ohne list zu aggregieren innerhalb einer Series Sie sollten stattdessen diesen Ansatz verwenden.