首页 > 解决方案 > 用熊猫中的第一条记录替换重复行的值?

问题描述

输入

 df

id   label
a      1
b      2
a      3
a      4
b      2
b      3
c      1
c      2
d      2
d      3

预期的

  df

id   label
a      1
b      2
a      1
a      1
b      2
b      2
c      1
c      1
d      2
d      2

对于ida,label值为 1,idb 为 2,因为 1 和 2 是 a 和 b 的第一条记录。

尝试

我参考了这篇文章,但仍然没有解决它。

标签: pandas

解决方案


更新transform first

df['lb2']=df.groupby('id').label.transform('first')
df
Out[87]: 
  id  label  lb2
0  a      1    1
1  b      2    2
2  a      3    1
3  a      4    1
4  b      2    2
5  b      3    2
6  c      1    1
7  c      2    1
8  d      2    2
9  d      3    2

推荐阅读