gpt4 book ai didi

python - 将几行与 Pandas 的定界符连接成一行

转载 作者:太空狗 更新时间:2023-10-30 01:47:32 25 4
gpt4 key购买 nike

我希望能够根据 ID 将多行字符串连接成一行。我使用库 pandas (python 3)。

val   id
Cat 1
Tiger 2
Ball 3
Bat 1
bill 2
dog 1

l = []
a = 0
while a < lendata:
if df["id"][a] == 1:
if a != 0:
df["val"][tmp] = ' '.join(l)
l = []
tmp = a
l.append(df["val"][a])
else:
l.append(df["val"][a])
a += 1

它适用于循环。我需要这个结果,

val
Cat Tiger Ball
Bat bill
dog

不是分组依据

问题:您知道如何使用 pandas 函数来实现吗?谢谢。

最佳答案

留在 Pandas 中:

df['group'] = (df['id'] == 1).cumsum()
df.groupby('group')['val'].apply(' '.join).reset_index()
   id             val
0 1 Cat Tiger Ball
1 2 Bat bill
2 3 dog

第一行根据您的定义定义组。第二行是标准的groupby操作。

关于python - 将几行与 Pandas 的定界符连接成一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56343390/

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