从多索引pandas系列创建numpy数组

时间:2018-01-23 23:53:28

标签: python pandas numpy

我有一个像下面这样的熊猫系列:

Year  Month
2016  09        41
      10        76
      11        54
      12       271
2017  01        88
      02        48
      03        54
      04        61
      05       156
      06        43
      07        57
      08        43
      09        69
      10        67
      11        99
      12       106
2018  01        34
Name: CustomerId, dtype: int64

我只想创建一个numpy数组,其中所有年份都与月份和值匹配。像这样:

2016  01    0
2016  02    0
.
.
.
2016  09   41
2016  10   76
.
.
.
2018  01   34
2018  02    0
.
.
.

我该怎么做? 感谢。

1 个答案:

答案 0 :(得分:0)

unstack + stack

S.unstack().stack(dropna=False).fillna(0).astype(int)
Out[591]: 
Year  Month
2016  1          0
      2          0
      3          0
      4          0
      5          0
      6          0
      7          0
      8          0
      9         41
      10        76
      11        54
      12       271
2017  1         88
      2         48
      3         54
      4         61
      5        156
      6         43
      7         57
      8         43
      9         69
      10        67
      11        99
      12       106
dtype: int32