gpt4 book ai didi

python - 从 groupby 索引中的拆分字符串聚合值

转载 作者:太空宇宙 更新时间:2023-11-03 13:25:11 26 4
gpt4 key购买 nike

我有一个如下所示的数据框:

index  name     value
1 Foo 9
2 Bar 11
3 Foo 2
4 Bar 4
5 Foo,Bar 3

如果我执行 df.groupby('name').count() 我得到:

         value
name
Foo 2
Bar 2
Foo,Bar 1

我想拆分 Foo,Bar 并将结果元组中存在的索引中的每个值加 1,这样分组的数据框如下所示:

         value
name
Foo 3
Bar 3

我可以想办法用 for 循环来做到这一点,但我想知道是否有一些内置的 pandas 方法可以解决这类问题。

最佳答案

对于 pandas 0.25+ 使用 Series.str.splitSeries.explode对于 flatten Series,然后对于计数 Series.value_countsSeries.to_frame :

df1 = df['name'].str.split(',').explode().value_counts().to_frame('value')
print (df1)
value
Foo 3
Bar 3

对于另一个版本,对 DataFrameDataFrame.stack 使用 splitexpand=True对于 flatten Series:

df1 = df['name'].str.split(',', expand=True).stack().value_counts().to_frame('value')
print (df1)
value
Foo 3
Bar 3

关于python - 从 groupby 索引中的拆分字符串聚合值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57567432/

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