【发布时间】:2018-07-23 18:43:28
【问题描述】:
我有一个这样的 df1:
Type Name Identifier Number Amount
A xx 0001 12 0.89
xx 0001 56 0.78
zz 0002 33 0.56
yy 0020 44 0.45
yy 0020 67 0.45
B ww 0300 12 0.34
ww 0300 54 0.1
kk 0900 43 0.2
我想获取每种类型的重复标识符的计数,以便生成的数据框现在看起来像
Type Count_Dups Ave. Amount
A 2 2.345
B 1 0.44
大街在哪里。数量是所有重复值的总和/重复值的计数。 (例如:A = (0.89+0.78+0.45+0.45)/2)
我应该使用 for 循环吗? groupby 够用吗?
【问题讨论】:
-
不清楚您所说的“重复标识符的计数”是什么意思,因为在您的示例中,重复的不同标识符的数量总是相同的,因为存在与前一行重复的行。例如。 [1, 2, 3, 3, 3] 的重复计数是 1 还是 2?
-
(0.89+0.78+0.45+0.45)/2 不是 2.345。
-
你试过什么代码?
-
@DSM 我想获取每组重复值的计数。在 A 组中有 2 个重复项(0001 和 0002),而在 B 组中有 1 个重复的标识符(0300)。
-
@HarvIpan 我尝试使用 for 循环,但没有显示我想要的输出。
标签: python pandas dataframe pandas-groupby