gpt4 book ai didi

python - Pandas :根据另一列中的标志连接列中的字符串,直到标志更改

转载 作者:太空宇宙 更新时间:2023-11-04 00:16:09 25 4
gpt4 key购买 nike

我正在尝试根据另一列中的值连接一列中的字符串。虽然这本质上并不困难,但这里标志的顺序很重要,所以我想不出一个 pythonic 方法来完成这个任务(目前正在尝试多个计数器/循环)。

示例表:

text    flag
a 0
b 0
c 1
d 0
e 1
f 1
g 1

示例输出:

text    flag
ab 0
c 1
d 0
efg 1

我想''.join 连续标记的每个字符串,直到命中下一个标记。唯一的标志是 1 和 0。有什么想法吗?

这是生成示例数据的快速方法,因此您不必自己动手:

import pandas as pd
df = pd.DataFrame({'text':['a','b','c','d','e','f','g'], 'flag':[0,0,1,0,1,1,1]})

最佳答案

我会这样做:

In [6]: (df.groupby(df.flag.diff().ne(0).cumsum(), as_index=False)
.agg({'text':'sum','flag':'first'}))
Out[6]:
text flag
0 ab 0
1 c 1
2 d 0
3 efg 1

关于python - Pandas :根据另一列中的标志连接列中的字符串,直到标志更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50914362/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com