我试图得到一个作者写的书的总数,把它和我的数据框放在一个名为booknumber的列中,这个数据框还有15列。你知道吗
我在网上查过,人们使用groupby with count(),但是它没有创建我想要的列,它只给出一列没有名称的数字,我不能将它与原始数据帧放在一起。你知道吗
author_count_df = (df_author["Name"]).groupby(df_author["Name"]).count()
print(author_count_df)
结果:
Name
A D 3
A Gill 4
A GOO 3
ALL SHOT 10
AMIT PATEL 5
..
vishal raina 7
walt walter 6
waqas alhafidh 3
yogesh koshal 8
zainab m.jawad 9
Name: Name, Length: 696, dtype: int64
应为:具有
Name other 14 columns from author_df Book Number
A D ... 3
A Gill ... 4
A GOO ... 3
ALL SHOT ... 10
AMIT PATEL ... 5
... ..
vishal raina ... 7
walt walter ... 6
waqas alhafidh ... 3
yogesh koshal ... 8
zainab m.jawad ... 9
对groupby使用transform并将其重新分配:
对于新的df,请使用:
使用reset_index()
这基本上告诉pandas groupby重置回原始索引
您做得很好,只是需要检查如何填充或将值赋回到您得到的新列中,这可以通过^{} 方法实现,该方法非常优雅。你知道吗
直接从文件:
相关问题 更多 >
编程相关推荐