熊猫 - 如何"group by"然后添加字符串



在熊猫中,我期待着"分组依据";a列中的一个值,将B列中的字符串相加。此外,我希望只有当相同的值出现在同一组中时才进行分组。如果该值出现中断,那么我正在寻找重新开始分组的方法。

理想情况下,我希望在不循环的情况下完成此操作。

不知道从哪里开始。有人对熊猫的最佳功能有什么建议吗?

下面是一个例子。我想转换这个:

'A' 'B'
0   faa hello
1   faa there
2   foo hi
3   faa how
4   faa are
5   faa you
6   foo i am well
7   foo thank you

进入:

'A' 'B'
0   faa hello there
2   foo hi
3   faa how are you
6   foo i am well thank you

;如果该值出现中断,那么我正在寻找重新开始分组的方法"这有点棘手——我们用一个特殊的分组条件来简化它:

df.groupby((df['A'] != df['A'].shift()).cumsum()).agg({'A':'first', 'B':' '.join})

输出:


A   B
A       
1   faa hello there
2   foo hi
3   faa how are you
4   foo i am well thank you

相关内容

最新更新