首页 >后端开发 >Python教程 >如何使用 Pandas groupby 组合组内的字符串?

如何使用 Pandas groupby 组合组内的字符串?

Patricia Arquette
Patricia Arquette原创
2024-10-24 19:06:291043浏览

How to Combine Strings Within Groups Using Pandas groupby?

Pandas groupby:如何获取字符串的并集

提供的 DataFrame 包含三列:A、B 和 C。目标是将 DataFrame 分组为A 列并从 C 列中获取每个组的字符串并集。

默认情况下,groupby 对数字列求和,这不适用于字符串。

使用自定义函数

一种方法是定义一个函数,使用 join 方法连接每个组内的字符串:

<code class="python">def f(x):
    return "{%s}" % ', '.join(x)</code>

并将此函数应用于分组的 DataFrame:

<code class="python">result = df.groupby('A')['C'].apply(f)</code>

这种方法产生所需的输出:

A
1    {This, string}
2           {is, !}
3               {a}
4          {random}

使用 sum 和连接

另一个选项是通过修改数据类型强制 sum 连接字符串:

<code class="python">df['C'] = df['C'].astype(str)
result = df.groupby('A')['C'].sum()</code>

这也是给出了想要的结果。

以上是如何使用 Pandas groupby 组合组内的字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn