Дано: матрица data (6 строк × 3 столбца) с числовыми значениями. Приведите каждый столбец к диапазону [0, 1] по формуле (x - min_столбца) / (max_столбца - min_столбца). Min/max считаются отдельно по каждому столбцу. Сохраните нормализованную матрицу (округлённую до 3 знаков) в `result`.
broadcasting normalization min_max
Задача «Broadcast: нормализация по столбцам» учит векторно считать на numpy без медленных циклов. Такие задачи дают на собеседованиях в Wildberries и других IT-компаниях. Уровень лёгкий — база, которую ждут от любого аналитика на Python.
Сначала разбери условие и формат входа-выхода, прикинь крайние случаи (пустой ввод, дубли, NaN). Затем выбери структуру данных и собери решение по шагам — начни с простого рабочего варианта, потом оптимизируй сложность. Код пишешь и запускаешь прямо в браузере: Python-тренажёр исполняет его через Pyodide (pandas, numpy, scipy) и проверяет результат автоматически.
В numpy ключ к скорости — векторизация и broadcasting вместо циклов Python. Понимание dtype, формы массива (shape) и того, какие операции возвращают копию, а какие view, отличает джуна от мидла. На собеседовании просят не просто посчитать, а объяснить, почему векторный код быстрее и где он экономит память.
Прокачать Python для аналитики — бесплатный курс «Pandas с нуля» и Python-тренажёр.
Открыть задачу в тренажёре → ← Все Python-задачи