NumPy для начинающих: интерактивный самоучитель с практикой в браузере
Быстрые массивы и научные вычисления — фундамент всей data-science экосистемы Python
Редакция Питоники

Список из миллиона чисел в чистом Python считает вечность — на массиве NumPy та же операция занимает миллисекунды. На этой библиотеке стоят Pandas, Scikit-learn и половина машинного обучения.
Десять уроков ведут от «что такое массив» до полноценного проекта: вы проанализируете годовую температуру, посчитаете статистику, отфильтруете аномалии и соберёте отчёт. Каждый урок — теория с примерами, код запускается прямо на странице, в конце — тест и практика с проверкой.
Мы пишем просто и с честными подводными камнями: где новички чаще всего спотыкаются, там стоит предупреждение.
Чему научитесь
- Создавать массивы десятью способами и понимать, когда какой лучше
- Индексировать и резать многомерные массивы без ошибок копирования
- Ускорять вычисления в 50–100 раз через векторизацию
- Применять broadcasting и не бояться осей (axis)
- Фильтровать данные масками и np.where
- Сделать первый аналитический проект на реальных данных
Для кого: Тем, кто знает основы Python (переменные, циклы, функции) и хочет быстро считать данные.
- Урок 1. Что такое NumPy и как установить через pip: первый массив ndarrayПервый массив ndarray: создаём, сравниваем со списком, разбираем dtype и shape — и ускоряем сумму миллиона чисел примерно в сто раз.35 мин
- Урок 2. Создание массивов в NumPy: arange, linspace, zeros, ones и другие способыВсе конструкторы NumPy на одной странице: arange против linspace, заготовки zeros и ones, матрица eye — и шпаргалка, когда какой способ брать.40 мин
- Урок 3. Индексация и срезы массивов NumPy: как достать любой элементИндексы с нуля и с конца, срезы с шагом, строки и столбцы двумерных массивов — и главный подводный камень NumPy: срез возвращает view, а не копию. С примерами, разбором ошибок и шпаргалкой.30 мин
- Урок 4. Операции с массивами: векторизация и почему NumPy быстрее списков в 100 разУмножаем миллион цен одной строкой и замеряем время через time.perf_counter: почему векторизация NumPy обгоняет цикл for в десятки раз. Ufunc, np.dot, булевы сравнения и правило «никаких for там, где есть операция».35 мин
- Урок 5. Broadcasting в NumPy: как складывать массивы разных размеровСкладываем вектор с матрицей без циклов: три правила broadcasting, столбцы через reshape и np.newaxis и честный разбор ошибки operands could not be broadcast together.40 мин
- Урок 6. Агрегирующие функции NumPy: sum, mean, min, max, std на реальных данныхСчитаем статистику на данных сети кофеен: sum, mean, median, std и percentile, загадка axis=0 против axis=1 и nan-функции для пропусков.45 мин
- Урок 7. Многомерные массивы и оси: reshape, axis и работа с матрицамиФорма массива — это взгляд на данные: reshape и магия -1, оси axis на пальцах, транспонирование T, матричное умножение @ и склейка vstack/hstack.40 мин
- Урок 8. Булева индексация и маски: фильтрация данных в NumPyДостаём из массива только нужное: булевы маски, операторы & | ~ вместо and/or, np.where в двух ролях, argmax и честная чистка выбросов в данных датчика.40 мин
- Урок 9. Случайные числа в NumPy: модуль random и генерация данныхГенератор default_rng: целые, дробные и нормальные случайные числа, choice с весами, shuffle, seed и воспроизводимость — плюс симуляции монетки, кубика и роста тысячи людей.40 мин
- Урок 10. Проект на NumPy: анализируем температуру за год и строим отчётФинальный проект раздела: генерируем год температуры с фиксированным seed, считаем статистику по месяцам через reshape(12, 30), ловим аномалии масками, сглаживаем ряд и печатаем отчёт.50 мин