这可能是一个重复的问题,请告诉我。
我有一个像这样的pandas数据框:
id | name | common |
---|---|---|
One | A | |
One | A | |
One | A | |
One | B | |
Two | C |
我想要输出这样的结果:
每个id的最常见名称放在了common列中。
id | name | common |
---|---|---|
One | A | A |
One | A | A |
One | A | A |
One | B | A |
Two | C | C |
我尝试了这个方法,但是现在我只是在盲目地瞎蒙。
df.groupby(['id', 'name']).agg(lambda x:x.value_counts().index[0])
x.mode()[0]
。 - Quang Hoang