如何在不删除pandas中的重复行的情况下总结一个值?

时间:2017-07-05 09:31:57

标签: python pandas

我有一个数据框:

document.getElementById('yourInputID').value = rs;

我希望我的输出是:

   a     b     c     d    f
0  ai    Y     5     3    w
1  ai    Y     5     3    r
2  ai    Y     5     2    t
3  ai    Y     5     3    o

e 是列 d 中唯一值的总和(表示唯一值为2和3),任何人都可以分享我对代码的想法?

这是我的代码:

   a     b     c     d    f     e
0  ai    Y     5     3    w     5
1  ai    Y     5     3    r     5 
2  ai    Y     5     2    t     5
3  ai    Y     5     3    o     5

2 个答案:

答案 0 :(得分:2)

求和唯一值。

In [280]: df['e'] = df.groupby(['a','b','c'])['d'].transform(lambda x: np.unique(x).sum())

In [281]: df
Out[281]:
    a  b  c  d  e
0  ai  Y  5  3  5
1  ai  Y  5  3  5
2  ai  Y  5  2  5
3  ai  Y  5  3  5

答案 1 :(得分:1)

您可以从系列中获取唯一值,然后对其求和。

df['e'] = df.d.unique().sum()