【发布时间】:2018-08-15 20:45:44
【问题描述】:
我对 pandas 很陌生,我正在尝试解决以下问题。 我的数据库看起来像这样:
而且我基本上需要找出谁在 2017 年和 2018 年之间卖得最多(两个日期之间的最大变化以及哪种水果)
对不起,如果这是一个愚蠢的问题,但我真的找不到使用 groupby 或 pivot 的简单解决方案。
谢谢!
【问题讨论】:
标签: python pandas pandas-groupby
我对 pandas 很陌生,我正在尝试解决以下问题。 我的数据库看起来像这样:
而且我基本上需要找出谁在 2017 年和 2018 年之间卖得最多(两个日期之间的最大变化以及哪种水果)
对不起,如果这是一个愚蠢的问题,但我真的找不到使用 groupby 或 pivot 的简单解决方案。
谢谢!
【问题讨论】:
标签: python pandas pandas-groupby
pd.pivot_table 是个不错的选择:
dfp = df.pivot_table(index=[ 'country', 'fruits'], columns=['date'],
values='kgsold', aggfunc=np.sum, fill_value=0)
# date 2017 2018
# country fruits
# germany apples 1 2
# figs 0 3
# pears 5 1
# italy apples 10 5
# pears 0 13
然后您可以根据您的要求查询数据透视表。
【讨论】: