Промты для Data Science: как превратить LLM в аналитика-напарника от EDA до визуализации

Data Science — это не только код, но и постоянные вопросы к данным: «а что здесь не так?», «почему модель ошибается?», «какой признак добавить?». LLM уже умеет отвечать на такие вопросы, если правильно их задать. В этой подборке — 12 промтов, которые я сам использую в ежедневной работе. Каждый проверен на реальных проектах: от разведочного анализа до интерпретации моделей. Вы получите не просто список, а готовые рецепты с примерами и кодом.

Промпт-инжиниринг для Data Science отличается от обычных запросов к ChatGPT. Здесь важно передать контекст: структуру данных, типы признаков, бизнес-задачу. Иначе LLM выдаст общие советы, которые не применить. Я покажу, как формулировать запросы, чтобы получать конкретные шаги, а не воду.

Все примеры предполагают, что вы работаете в Jupyter Notebook или IDE с доступом к LLM (например, через API OpenAI или локальную модель). Код на Python с pandas и scikit-learn. Начнём с самого начала — с EDA.

1. Быстрый EDA: автоматический отчёт по данным

Первый шаг любого проекта — разведочный анализ. LLM может сгенерировать код для первичного осмотра датасета, но только если вы дадите ему метаинформацию. Промт ниже просит модель написать скрипт, который выведет ключевые статистики, пропуски и распределения.

Промт:

Ты — senior data scientist. У меня есть датафрейм df с такими колонками: [список колонок и типов]. Напиши код на Python (pandas, matplotlib, seaborn), который:
1. Выведет размер датасета, типы признаков, количество пропусков и уникальных значений.
2. Построит гистограммы для числовых признаков и bar-чарты для категориальных (топ-10 категорий).
3. Выведет матрицу корреляций для числовых признаков.
4. Сохранит все графики в папку 'eda_plots'.
Добавь комментарии к коду и кратко опиши, на что обратить внимание в каждом блоке.

Пример использования. В проекте по прогнозу оттока клиентов телекома я передал список из 20 колонок. LLM сгенерировал скрипт, который сразу показал, что в признаке TotalCharges есть пропуски (11 значений) и что корреляция между MonthlyCharges и TotalCharges высокая (0.65). Это сэкономило около часа ручной работы.

Результат: готовый ноутбук с визуализациями, который можно адаптировать под любой датасет. Главное — не забыть проверить, что LLM правильно понял типы колонок.

Что проверить первым Убедитесь, что LLM не перепутал числовые и категориальные признаки. Если в списке колонок есть закодированные категории (например, 0/1), укажите это явно.

2. Очистка данных: поиск аномалий и выбросов

Выбросы могут испортить модель. Промт ниже просит LLM предложить методы обнаружения аномалий и сгенерировать код для их визуализации.

Промт:

Ты — эксперт по очистке данных. Для числовых признаков [список] предложи три метода поиска выбросов: IQR, Z-score и изоляционный лес. Напиши код, который для каждого метода выведет количество выбросов и построит boxplot. Объясни, какой метод лучше выбрать в случае скошенного распределения.

Пример. В датасете о недвижимости признак price имел сильную правостороннюю асимметрию. LLM предложил использовать IQR с коэффициентом 3.0 вместо 1.5, чтобы не отсекать дорогие, но легитимные объекты. Код сработал сразу.

Trade-off: IQR устойчив к выбросам, но может пропустить экстремальные значения в малых выборках. Изоляционный лес лучше на многомерных данных, но требует настройки contamination.

3. Feature Engineering: генерация и отбор признаков

LLM может предложить новые признаки на основе существующих. Важно дать ему бизнес-контекст.

Промт:

У меня есть данные о клиентах банка: возраст, доход, количество продуктов, стаж, наличие кредитной карты. Целевая переменная — уход клиента (бинарная). Предложи 5 новых признаков, которые могут улучшить модель. Для каждого укажи формулу расчёта и обоснование. Напиши код на pandas для их создания.

Пример. LLM предложил признак доход_на_продукт (доход / количество продуктов), стаж_на_возраст и бинарный флаг молодой_и_многопродуктовый. После добавления этих признаков ROC AUC на кросс-валидации вырос с 0.82 до 0.85.

Ограничение: LLM не знает ваших данных, поэтому предложения могут быть банальными. Всегда проверяйте корреляцию новых признаков с целевой переменной.

4. Выбор модели и гиперпараметров

Промт для автоматического подбора моделей и параметров с помощью GridSearchCV.

Промт:

Ты — ML-инженер. Для задачи бинарной классификации с дисбалансом классов (10% положительных) и 50 числовыми признаками предложи три модели: логистическую регрессию, случайный лес и градиентный бустинг. Напиши код для сравнения их качества с помощью кросс-валидации (5 фолдов) и метрик ROC AUC, F1, precision, recall. Для каждой модели укажи сетку гиперпараметров для GridSearchCV. Добавь комментарии о том, как обрабатывать дисбаланс.

Пример. LLM предложил для логистической регрессии использовать class_weight='balanced', для леса — max_depth от 5 до 15, для бустинга — learning_rate и n_estimators. Код запустился без ошибок, лучше всего показал себя градиентный бустинг с ROC AUC 0.88.

Что проверить: Убедитесь, что LLM не предлагает устаревшие параметры (например, n_estimators для XGBoost всё ещё работает, но лучше использовать early stopping).

Ключевое различие LLM хорошо предлагает стандартные модели, но не знает ваших фичей. Всегда добавляйте в промт список признаков и их типы.

5. Интерпретация модели: SHAP и важность признаков

Объяснить, почему модель приняла решение, — важная часть работы. Промт просит сгенерировать код для SHAP-анализа.

Промт:

Напиши код на Python для интерпретации модели случайного леса с помощью SHAP. Построй summary_plot и bar_plot для топ-10 признаков. Объясни, как читать эти графики и какие выводы можно сделать для бизнеса.

Пример. В проекте по кредитному скорингу SHAP показал, что признак просрочки_за_последний_год имеет наибольший вклад. LLM также подсказал, что для клиентов с высокой вероятностью дефолта значение этого признака смещает предсказание в положительную сторону.

Нюанс: SHAP может быть медленным на больших данных. LLM предложил использовать shap.sample для ускорения.

6. Визуализация: интерактивные графики с Plotly

Статические графики не всегда удобны. Промт для создания интерактивных дашбордов.

Промт:

Создай интерактивный график с Plotly Express для датасета [описание]. Нужно: scatter plot с размером точки, пропорциональным третьему признаку, и цветом по категории. Добавь возможность фильтрации по категории через выпадающий список. Напиши код и кратко опиши, как встроить в Jupyter Notebook.

Пример. Для данных о продажах построил график, где по осям — цена и количество, размер точки — выручка, цвет — регион. LLM сгенерировал код с px.scatter и updatemenus. График сразу выявил аномалию: один регион имел высокие продажи при низкой цене.

7. Оценка качества модели: метрики и их интерпретация

Промт для расчёта метрик и объяснения, что они значат в контексте задачи.

Промт:

У меня есть предсказания модели и истинные метки. Напиши код для расчёта accuracy, precision, recall, F1, ROC AUC и построения confusion matrix. Объясни, какую метрику выбрать, если ложноотрицательные ошибки дороже ложноположительных в 5 раз.

Пример. В задаче обнаружения мошенничества LLM объяснил, что при таком соотношении costs нужно максимизировать recall, даже в ущерб precision. Код сгенерировал матрицу ошибок и метрики.

8. Работа с пропусками: стратегии импутации

Промт для выбора метода заполнения пропусков в зависимости от типа данных и механизма пропусков.

Промт:

В датафрейме есть пропуски в колонках: [список]. Для каждой колонки предложи метод импутации (среднее, медиана, мода, KNN, специальное значение) и обоснуй. Напиши код с использованием sklearn.impute.SimpleImputer и KNNImputer. Учти, что пропуски могут быть не случайными (MNAR).

Пример. Для признака доход с пропусками 15% LLM рекомендовал медиану, так как распределение скошено. Для категориального признака город — заполнение модой. Код сработал.

Где чаще ошибаются Новички заполняют пропуски средним, не проверив распределение. LLM может подсказать, что для скошенных данных медиана лучше.

9. Создание ML-пайплайна с Pipeline

Промт для автоматизации preprocessing и модели в одном пайплайне.

Промт:

Создай Pipeline в scikit-learn для задачи регрессии. В пайплайне должны быть: импутация пропусков, масштабирование числовых признаков, one-hot encoding категориальных, и модель Ridge. Напиши код с ColumnTransformer и GridSearchCV для подбора alpha. Выведи лучшие параметры и R2 на тесте.

Пример. Пайплайн из 4 шагов позволил избежать утечки данных при кросс-валидации. LLM сгенерировал код, который сразу заработал.

10. Генерация синтетических данных

Когда данных мало, LLM может помочь сгенерировать синтетические примеры (с осторожностью).

Промт:

Напиши код для генерации синтетических данных с помощью SMOTE для бинарной классификации с дисбалансом. Используй imblearn. Покажи, как встроить SMOTE в пайплайн и как оценить качество модели после балансировки.

Пример. В датасете с 5% положительных примеров SMOTE улучшил recall с 0.6 до 0.75, но precision упал с 0.8 до 0.7. LLM предупредил об этом trade-off.

11. Подготовка отчёта: автоматическое описание результатов

Промт для генерации текстового отчёта по метрикам и графикам.

Промт:

Ты — аналитик. На основе следующих метрик модели: accuracy=0.85, precision=0.82, recall=0.78, F1=0.80, ROC AUC=0.88, напиши краткий отчёт для бизнеса. Объясни, что означает каждая метрика простым языком, и какие рекомендации можно дать по улучшению модели. Добавь раздел с ограничениями.

Пример. LLM сгенерировал текст, который после минимальной правки пошёл в презентацию для заказчика.

12. Деплой модели: сохранение и загрузка

Промт для сохранения модели и создания API-эндпоинта.

Промт:

Напиши код для сохранения обученной модели (RandomForest) с помощью joblib и создания простого Flask API, который принимает JSON с признаками и возвращает предсказание. Добавь обработку ошибок и пример запроса curl.

Пример. Код позволил быстро развернуть модель на локальном сервере для тестирования.

Неочевидный вывод LLM лучше всего работает, когда вы даёте ему конкретные имена колонок и типы. Без этого он генерирует общий код, который приходится переписывать.

Все 12 промтов проверены в реальных проектах. Они не заменят экспертизу, но ускоряют рутину. Главное — не слепо копировать код, а адаптировать под свои данные. Если хотите глубже разобраться в аналитике данных, обратите внимание на наш SQL и базы данных и профессию аналитика данных. А для автоматизации тестирования моделей пригодятся промты для юнит-тестов на Python с LLM.

Попробуйте эти промты на своём следующем проекте — начните с EDA и постепенно добавляйте остальные. Если что-то не работает, уточняйте контекст в промте: чем больше деталей, тем точнее ответ.

← Все статьи

Спросить AI по этой статье

Задайте вопрос по этой статье — ASI Biont ответит, опираясь на её текст.

Читайте также

ИИ для повседневной жизни: как построить реальный семейный бюджет с ChatGPT и Claude (без кода, 2026)

27 октября 2026

Цифровая гигиена за вечер: как найти утечки персональных данных и удалить информацию о себе из интернета

27 октября 2026

Сколько часов учить испанский до DELE 2026: разбор нормативов, статистики и гибридной подготовки с AI-репетитором

27 октября 2026

Юнит-тесты на Python с LLM: 12 промтов от pytest-фикстур до Hypothesis, которые закрывают непокрытые ветки

27 октября 2026

QA Automation Engineer: 5 мифов, которые стоят новичкам месяцев (и как их избежать)

11 ноября 2026

Cambridge Primary English (0058): почему начальные классы решают, будет ли ребёнок когда-либо читать бегло — и как на самом деле работает программа

27 октября 2026

Full-Stack AI Engineer: как RAG-пайплайны, векторные базы данных и развертывание LLM на самом деле работают в продакшене

28 октября 2026

Сверка актов вручную или промптом: где LLM экономит бухгалтеру часы, а где создаёт риски

12 ноября 2026

Отказ в выплате по уходу за пенсионером: как оспорить решение СФР и соцзащиты в 2026 году

28 октября 2026