微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python-需要在Pandas groupby中以特定格式输出

我在数据集上运行了以下命令:

data.groupby(['month', 'item'])['date'].median()

输出如下:

month    item
2014-11  call    107
         data     29
         sms      94
2014-12  call     79
         data     30
         sms      48

但是,我需要这样的输出

 month    item
    2014-11  call    107
    2014-11  data     29
    2014-11  sms      94
    2014-12  call     79
    2014-11  data     30
    2014-11  sms      48

我可以用什么来达到上述目的?

解决方法:

从您的问题尚不清楚,您希望DataFrame看起来像什么(特别是索引应该是什么).

如果按照.reset_index()进行操作,则会得到以下内容

df = pd.DataFrame({'a': [1, 1, 2, 2], 'b': [1, 2, 1, 2], 'c': range(4)})
df.c.groupby([df.a, df.b]).sum().reset_index()

    a   b   c
0   1   1   0
1   1   2   1
2   2   1   2
3   2   2   3

即具有运行索引的DataFrame.

如果按照.reset_index().set_index(‘month’)进行操作,则会得到以下内容

df = pd.DataFrame({'a': [1, 1, 2, 2], 'b': [1, 2, 1, 2], 'c': range(4)})
df.c.groupby([df.a, df.b]).sum().reset_index().set_index('a')
    b   c
a       
1   1   0
1   2   1
2   1   2
2   2   3

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐