Слишком много индексаторов с iloc - PullRequest
0 голосов
/ 08 мая 2018

у меня есть фрейм данных (df), который выглядит следующим образом enter image description here

Я пытаюсь получить продажи за неделю с 1 по 3 за период с 1950 по 1952 год. Я могу добиться этого с помощью приведенного ниже кода

.
idx = pd.IndexSlice
df.loc[:,idx[:,1950:1952,'Week1':'Week3']]

Результат: enter image description here

но когда я пытаюсь сделать это через iloc, я получаю слишком много ошибок индексаторов. Я использую этот код:

df.iloc[:,idx[:,:4,:4]]

почему это не работает для iloc, но работает для loc?

ниже - значение столбцов моего фрейма данных.

df.columns
MultiIndex(levels=[['Sale'], [1950, 1951, 1952, 1953], ['Week1', 'Week2', 'Week3', 'Week4']],
       labels=[[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3], [0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3]],
       names=[None, 'Year', 'Week'])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...