gpt4 book ai didi

python - 在 python 中的数据帧中查找、计数和提取重复项

转载 作者:行者123 更新时间:2023-12-04 09:36:16 28 4
gpt4 key购买 nike

我有一个数据框,包括两列 [颜色,值],如下图所示:

df1 = pd.DataFrame({"Color":[Green, Blue, Green, Green, Blue, Red, Green, Green, Blue, Red, Green, Green, Blue, Red, Blue, Blue, Green], 
"Value":[20, 21, 25, 30, 41, 512, 40, 41, 352, 31, 52, 451, 253, 54, 142, 122, 784 ]})
enter image description here
目的是找到颜色列的重复列表并计算它们。我使用了这个代码:
dups_colors = pd.concat(g for _, g in data.groupby("Color") if len(g) > 1)#find duplications
输出是:
enter image description here
然后,我使用以下代码计算了重复次数:
count = dups_colors.pivot_table(index=['Color'], aggfunc='size')#count number of duplications
输出是:
enter image description here
直到这里一切都很好。现在我有两个问题如下:
Q1:我需要在这个 mannar 中将计数列添加到 dups_colors 数据框中。
enter image description here
Q2:我需要将对应于每种颜色的值提取到带有颜色标题的单独列中,如下所示:
enter image description here
请看看并帮助我。

最佳答案

关于 Q1 我会这样做:

import pandas as pd
df = pd.DataFrame({'color':['Green','Green','Green','Blue','Blue','Red']})
count = {'Green':3, 'Blue':2}
df['Count'] = None
for name, occur in df.groupby('color').indices.items():
df['Count'][occur[0]] = count.get(name)
print(df)
输出:
  color Count
0 Green 3
1 Green None
2 Green None
3 Blue 2
4 Blue None
5 Red None
注意:我简化了你的例子并决定使用 None对于给定 color 的所有非首次出现和单 color s。

关于python - 在 python 中的数据帧中查找、计数和提取重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62575459/

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