Excel умер? Нет. Но штуки, которые я раньше делал в нём за час, теперь делаю за десять минут в Python — и это изменило мой рабочий процесс больше, чем я ожидал.
Ситуация: была таблица на 80 тысяч строк, кривые даты, дубликаты и один столбец, который зачем-то разбили по городам через запятую. В Excel я бы открыл Power Query, написал бы пару формул, потратил полдня и получил что-то, что работает, но объяснить другому человеку как — не смог. В Python с Copilot сел, описал задачу по-человечески и за десять минут получил чистый код, который я хотя бы понимаю.
История не про то, что Excel плохой. Excel — отличный инструмент. История про то, что ИИ сдвинул планку того, что можно считать порогом входа в Python для аналитика.
Зачем вообще уходить из Excel
Excel хорош для всего, что помещается на экран. Но есть момент, когда он начинает драть нервы. Когда формула #REF! всплывает на ровном месте. Когда файл весит 50 мегабайт и открывается тридцать секунд. Когда нужно повторить ту же операцию на новых данных и ты либо пишешь макрос, либо делаешь всё руками заново.
У меня этот момент наступил на задаче с маркетинговой воронкой. Нужно было для каждого пользователя посчитать путь от первого касания до покупки, учитывая атрибуцию последнего клика. В Excel это делалось через формулу с вложенным IF, тремя вспомогательными столбцами и длинным XLOOKUP. Работало, но любое изменение логики — полный передел. На Python с Pandas это заняло строк двадцать, и менять логику — вопрос пары минут.
Не всем это нужно. Если у тебя отчётность из десяти строк и пары графиков — конечно, оставайся в Excel. Но если тратишь больше часа в неделю на повторяющиеся манипуляции с данными, Python с ИИ-помощником уже имеет смысл.
Что изменил Copilot
Раньше главный барьер в Python был не синтаксис — его можно выучить. Барьер был в том, что тратишь полчаса, чтобы понять, как правильно назвать функцию, какой метод массива выбрать, почему код работает, но результат пустой. Это называется джун-велосипедизм, и с ним сталкивался каждый.
Copilot не убрал этот барьер полностью, но сильно сдвинул. Описываю задачу на русском или английском — "посчитай среднее значение по группам, где сумма больше 1000" — и получаю рабочий код Pandas. Иногда нужно подправить, иногда подсказка уводит не туда, но в большинстве случаев я трачу пять минут на код вместо тридцати.
Конкретный пример. На прошлой неделе нужно было смержить три CSV-файла, отфильтровать по дате, сгруппировать и построить простой график. Без Copilot я бы полез в документацию Pandas, вспоминал бы синтаксис merge. С Copilot написал комментарий в коде — ## merge three files on user_id, filter last 30 days, group by product — и он дописал остальное. Проверил, поправил одну ошибку с форматом даты, и всё заработало.
Что я понял: Copilot лучше всего работает на задачах, которые ты можешь описать словами. Если сам не знаешь, как сформулировать задачу — он тоже не поможет.
Честно о граблях
Не всё гладко. Три проблемы, с которыми я столкнулся.
Первое — Copilot генерирует рабочий, но не оптимальный код. Он не знает, что у тебя таблица на миллион строк и groupby по строковому столбцу будет делаться три минуты. Он сгенерирует решение, которое даст правильный ответ, но медленно. Потом ты сам учишься видеть эти узкие места.
Второе — он путается в сложных условиях. Если задача линейная — "сделай то-то с теми-то данными" — всё отлично. Если нужно условие в условии, два цикла и обработка исключений — начинает писать ерунду, и ты тратишь время на исправление, которое мог бы просто написать сам.
Третье — код, который ты не понимаешь, ты не можешь поддерживать. Это не проблема Copilot, это проблема подхода. Сначала я просто копировал сгенерированный код и запускал. Потом понял, что через месяц не помню, что делает третья строчка. Теперь всегда сначала читаю сгенерированный код, разбираюсь в логике — и только потом запускаю.
Что реально изменилось в моей работе
Я перестал бояться новых данных. Раньше, если приходил файл с нестандартной структурой, я сначала паниковал, потом мучился. Теперь — описал задачу, написал код, разобрался. Это не магия, просто порог тревоги снизился.
Я начал автоматизировать то, что раньше не автоматизировал. Если задача занимает 20 минут вручную и 40 минут в Python, смысла не было. Теперь — 10 минут на код, и потом каждый запуск занимает секунды.
Я стал лучше понимать данные. Когда пишешь код, который преобразует данные, ты физически не можешь не думать о том, что в них происходит. Это побочный эффект, но полезный.
Я начал разговаривать с данными на одном языке с разработчиками. Это пригодилось, когда нужно было объяснить аналитику, как воспроизвести мой отчёт в продакшене.
Стоит ли начинать
Если ты аналитик и тратишь больше пары часов в неделю на повторяющиеся манипуляции с данными — попробуй. Не нужно учить Python с нуля, не нужно читать книжки. Поставь Copilot в VS Code, открой Jupyter Notebook, опиши свою задачу на русском и посмотри что получится.
Первый результат может разочаровать — код покажется непонятным, что-то не заработает, захочется вернуться в Excel. Нормально. Попробуй вторую, третью задачу. Где-то к пятой поймаешь момент, когда код, написанный с помощью подсказок, решает задачу быстрее и надёжнее, чем ты сделал бы руками.
У меня этот момент был на задаче с очисткой адресов. Кривые форматы, пропуски, дубликаты. Описал что хочу получить, подправил сгенерированный код — и за час сделал то, что вручную делал бы полдня.
Excel никуда не делся. Но теперь есть выбор — и это уже много.
