Учим индексацию в numpy для аналитика: срезы a[1:3], 2D-доступ a[:,0], boolean-маски a[a>0] с & | и fancy-индексация.
Индексация в numpy — это главный навык, ради которого numpy вообще учат. Если вы умеете доставать нужные строки, столбцы и значения по условию — вы умеете фильтровать данные без единого цикла for. В этом уроке разберём четыре способа: срезы (a[1:3]), 2D-доступ (a[1, 2], a[:, 0]), boolean-маски (a[a > 0]) и fancy-индексацию (a[[0, 2, 4]]). Это та самая механика, которая потом один в один работает в pandas (df[df['revenue'] > 0]) — просто там она поверх таблиц, а здесь поверх массивов.
В прошлых частях курса numpy с нуля мы создавали массивы и считали по ним метрики. Теперь научимся выбирать из массива именно те данные, которые нужны: будни из недельной выручки, столбец «вариант B» из A/B-матрицы, только дни с положительным приростом. Для аналитика это ежедневная работа — отфильтровать, отрезать, заменить.