eag*_*ner 6 python data-analysis pandas pandas-groupby
数据集包含4列,其中name是孩子的名字,yearofbirth表示孩子出生的年份,number表示使用该特定姓名命名的婴儿数.
For example, entry 1 reads, in the year 1880, 7065 girl children were named Mary.
Run Code Online (Sandbox Code Playgroud)
通过大熊猫,我试图找出每年哪个名字最常用的名字.我的代码
df.groupby(['yearofbirth']).agg({'number':'max'}).reset_index()
Run Code Online (Sandbox Code Playgroud)
上面的代码部分回答了手头的问题.
我想要名字和最大数字.
根据这个问题的答案,我想出了这个解决方案:
idx = df.groupby(['yearofbirth'])['number'].transform(max) == df['number']
df = df[idx]
print(df)
name number sex yearofbirth
0 Mary 7065 F 1880
Run Code Online (Sandbox Code Playgroud)