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

Python熊猫-数据框的多索引系列

(背景:我正在尝试学习Pandas和matplotlib并从我的irclog中获得一些漂亮的图表.)

我设法将一些数据解析成一个多索引的Series(我们称之为itseries):

                        msgs
id    datetime_period
A     2014-07-04 07:00  1
      2014-07-04 08:00  2
      2014-07-08 11:00  5
B     2014-07-08 11:00  1
C     2014-07-04 07:00  2

对于制图,我想将其组织成如下所示的数据框:

index             A  B  C
2014-07-04 07:00  1  0  2
2014-07-04 08:00  2  0  0
2014-07-08 11:00  5  1  0

我该怎么做呢?我想我可以做这样的事情:

df = DataFrame({i: series.ix[i] for i in ['A', 'B', 'C'] })

但是还有更多的“熊猫”方式吗? (或者,如果没有,我将如何从系列中检索列表[‘A’,’B’,’C’],而不是像上面那样明确地写出来?)

或者(在更容易使用的情况下),还有一个原始的“原始”数据框,我首先使用它来构建系列.它包含每个昵称发布的每个消息的时间戳,如下所示:

timestamp              id 
2014-07-04 07:11:00    A
2014-07-04 07:12:32    C
2014-07-04 07:15:03    C
etc.

解决方法:

unstack可用于将MultiIndex的级别旋转到列中. fillna将缺失的值替换为0,如所需的输出所示.

In [313]: series.unstack(level='id').fillna(0)
Out[313]: 
id                   A  B  C
datetime_period             
2014-07-04 07:00:00  1  0  2
2014-07-04 08:00:00  2  0  0
2014-07-08 11:00:00  5  1  0

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

相关推荐