如何进行分组并创建字符串列表?

我有。

df=pd.DataFrame({'a':[1,1,2],'b':[[1,2,3],[2,5],[3]],'c':['f','df','ere']})
df
    a   b           c
0   1   [1, 2, 3]   f
1   1   [2, 5]      df
2   2   [3]         ere

我想对每个元素进行连接并创建一个列表。

pd.DataFrame({'a':[1,2],'b':[[1,2,3,2,5],[3]],'c':[['f', 'df'],['ere']]})
    a   b               c
0   1   [1, 2, 3, 2, 5] [f, df]
1   2   [3]             [ere]

我试过了:

df.groupby('a').agg({'b': 'sum', 'c': lambda x: list(''.join(x))})

a   b               c
1   [1, 2, 3, 2, 5] [f, d, f]
2   [3]             [e, r, e]

但不太正确

有什么建议吗?

解决方案:

你几乎是对的。

df.groupby('a', as_index=False).agg({
    'b': 'sum',
    'c': list    # no join needed
})

输出。

   a                b        c
0  1  [1, 2, 3, 2, 5]  [f, df]
1  2              [3]    [ere]

给TA打赏
共{{data.count}}人
人已打赏
未分类

我正在尝试接受我的android sdk授权,但它显示我有java home变量未设置的错误。

2022-9-9 9:21:16

未分类

写入csv:当行中的项目为空时,列被移位 (Python)

2022-9-9 9:21:18

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索