Если вы работаете с данными, то знаете, как много времени отнимает рутинный код: загрузка CSV, очистка пропусков, группировки, построение графиков. Современные языковые модели — ChatGPT, Claude, YandexGPT — умеют генерировать такой код на Python за считанные секунды. Главное — правильно составить промт. В этой подборке — 12 проверенных запросов, которые ускоряют ежедневную работу дата-сайентиста. Каждый промт можно скопировать и использовать как основу для своих экспериментов.
Почему это работает? Модели обучались на огромном количестве кода и документации, поэтому они отлично справляются с типовыми задачами. Однако результат зависит от точности формулировки. Ниже вы найдёте промты, которые дают конкретный код на Pandas, Matplotlib и Seaborn с комментариями.
Разведочный анализ данных
1. Первое знакомство с датасетом (EDA)
Промт: «Загрузи данные из CSV-файла. Используй Pandas. Выведи первые 5 строк, информацию о типах данных, количество пропусков в каждом столбце и основные статистики для числовых переменных (mean, median, std, min, max). Каждому блоку добавь комментарий. Результат оформи как код Python.»
Задача: получить быстрый срез по структуре данных: типы колонок, пропуски, статистики. Это отправная точка любого анализа.
Пример использования: для датасета Titanic вы получите код, который выводит таблицу с 891 строками, видит пропуски в колонках Age и Cabin, а также распределение возрастов. Такой результат помогает сразу определить, какие данные требуют очистки.
Подробнее о методах EDA в документации Pandas.
2. Обработка пропусков
Промт: «Напиши функцию на Python, которая принимает DataFrame и возвращает отчёт о пропусках: процент пропусков по каждому столбцу. Предложи стратегию заполнения пропусков для числовых и категориальных колонок. Выведи код функции и пример использования на синтетическом датасете.»
Задача: автоматизировать процесс поиска и заполнения пропусков. Промт даёт не только код, но и рекомендации (например, заполнить медианой или модой).
Пример использования: вы получаете готовую функцию missing_report(df) и код для DataFrame с 1000 строк, где в колонках есть NaN. Это экономит время на написание однотипного кода.
3. Преобразование типов данных
Промт: «Напиши код для автоматического определения и преобразования типов данных в Pandas. Например, строки с датами преобразуй в datetime, числовые строки — в float. Учти возможность ошибок и добавь параметр errors. Покажи пример на датасете с разными типами.»
Задача: часто в загруженных данных типы указаны неверно. Промт помогает быстро исправить типы, что критично для дальнейших операций.
Пример: после выполнения вы сможете применить код к любому датасету, где колонка 'date' читается как object, а 'sales' — как строка.
Очистка данных
4. Удаление выбросов методом IQR
Промт: «Напиши функцию для удаления выбросов из числовых колонок DataFrame с использованием метода межквартильного размаха (IQR). Выведи код, который принимает DataFrame и список колонок, и возвращает DataFrame без выбросов. Покажи пример на наборе данных с заведомо известными выбросами.»
Задача: выбросы искажают статистики и модели. IQR — простой и надёжный способ их детекции.
Пример: для датасета с зарплатами, где есть значения 1 000 000, функция удалит такие аномалии, оставив данные в пределах 1.5 IQR от квартилей.
5. Удаление дубликатов
Промт: «Напиши код для поиска и удаления дублированных строк в Pandas. Добавь параметры subset и keep, чтобы контролировать, какие колонки считаются дубликатами и какую строку оставлять. Выведи количество удалённых строк. Покажи пример на синтетическом DataFrame.»
Задача: дубликаты часто возникают при объединении источников. Промт даёт код, который можно встроить в пайплайн обработки.
Пример: на данных о транзакциях вы сможете оставить только первое вхождение каждой транзакции и увидеть, сколько строк было удалено.
6. Кодирование категориальных переменных
Промт: «Напиши код для преобразования категориальных колонок в числовые с помощью OneHotEncoder из sklearn. Используй ColumnTransformer в пайплайне, чтобы автоматически обрабатывать и числовые, и категориальные колонки. Покажи пример на датасете с несколькими категориальными признаками.»
Задача: модели машинного обучения работают с числами. Промт помогает подготовить данные к обучению, избегая ошибок при использовании get_dummies.
Пример: для датасета с полом и классом билета (Titanic) вы получите пайплайн, который на выходе даёт разреженную матрицу признаков.
Группировка и сводные таблицы
7. Группировка и агрегация
Промт: «Используя Pandas, сгруппируй данные по двум колонкам и выведи агрегированные статистики: среднее, сумму, количество. Используй метод agg с несколькими функциями. Покажи пример на данных о продажах, где есть колонки country, product, revenue.»
Задача: получение сводных метрик по группам — основа управления отчётами.
Пример: вы получите таблицу с доходами по странам и продуктам, что удобно для презентаций.
8. Pivot-таблицы
Промт: «Создай сводную таблицу (pivot_table) из DataFrame, используя индексы, столбцы и значения. Добавь параметр aggfunc и margins=True для итогов. Напиши код для датасета с информацией о продажах (год, регион, менеджер, выручка).»
Задача: pivot-таблицы позволяют быстро перестраивать данные для анализа.
Пример: вы получите таблицу, где строки — регионы, столбцы — годы, значения — сумма выручки, плюс итоговая строка.
9. Работа с датами и временными рядами
Промт: «Напиши код для преобразования колонки с датами в datetime, установки индекса и вычисления скользящего среднего с окном 7 дней. Добавь построение графика. Используй Matplotlib. Покажи пример на синтетическом временном ряде с ежедневными значениями.»
Задача: анализ временных рядов требует правильной работы с датами. Промт даёт готовый шаблон.
Пример: вы получите код, который читает CSV, парсит даты, строит скользящее среднее и рисует график, сглаживающий колебания.
Визуализация данных
10. Гистограмма и ящик с усами
Промт: «Построй гистограмму и boxplot для числовой колонки с помощью Seaborn. Добавь подписи осей и заголовок. Используй данные tips из библиотеки seaborn. Выведи код и объясни интерпретацию графиков.»
Задача: визуально оценить распределение и обнаружить выбросы.
Пример: на данных о чаевых (tips) вы увидите, что распределение суммы счёта правостороннее, а boxplot покажет несколько выбросов.
Ссылка на документацию Seaborn.
11. Матрица корреляций с тепловой картой
Промт: «Напиши код для вычисления корреляционной матрицы числовых колонок DataFrame и построения тепловой карты с помощью Seaborn. Отобрази значения корреляции в ячейках. Используй data = df.corr(). Покажи пример на датасете iris.»
Задача: понять взаимосвязи между признаками перед построением моделей.
Пример: для iris вы увидите, что лепестки имеют сильную положительную корреляцию, а ширина чашелистика слабо связана с остальными.
12. Pairplot для многомерного анализа
Промт: «Используя Seaborn, построй pairplot для датасета iris, раскрасив точки по виду (species). Настрой стиль, размер, добавьте legend. Объясни, как читать такой график.»
Задача: компактно показать взаимное распределение всех пар признаков.
Пример: вы получите матрицу графиков, где по диагонали — гистограммы, а остальные ячейки — scatter plots с цветовой кодировкой по видам. Это помогает визуально оценивать разделимость классов.
Заключение
Эти 12 промтов покрывают базовые операции, с которыми сталкивается каждый дата-сайентист. Используйте их как отправную точку: адаптируйте под свои данные, объединяйте в пайплайны и дорабатывайте. Помните, что нейросеть может ошибаться, поэтому всегда проверяйте код на небольших тестовых выборках.
Сохраните статью в закладки — и пусть рутинные задачи решаются быстрее. А если вы знаете полезный промт, поделитесь в комментариях.
Комментарии