BUG: pd.Grouper specification broken for non-datetimelike when level specified · Issue #8866 · pandas-dev/pandas (original) (raw)

In [15]: s = Series(np.arange(8),index=pd.MultiIndex.from_product([list('ab'),range(2),pd.date_range('20130101',periods=2)],names=['one','two','three']))

In [16]: s
Out[16]: 
one  two  three     
a    0    2013-01-01    0
          2013-01-02    1
     1    2013-01-01    2
          2013-01-02    3
b    0    2013-01-01    4
          2013-01-02    5
     1    2013-01-01    6
          2013-01-02    7
dtype: int64

# datetimelikes work
In [17]: s.groupby(pd.Grouper(level='three',freq='M')).sum()
Out[17]: 
three
2013-01-31    28
Freq: M, dtype: int64

# just specifying a level breaks
In [18]: s.groupby(pd.Grouper(level='one')).sum()
ValueError: No axis named None for object type <class 'pandas.core.series.Series'>