# Лабораторная работа №5 ## Регрессия #### ПИбд-41 Арзамаскина Милана #### Вариант №2 ## Задание: Использовать регрессию по варианту для данных из таблицы 1 по варианту (таблица 10), самостоятельно сформулировав задачу. Оценить, насколько хорошо она подходит для решения сформулированной вами задачи. Задача по варианту №2: с помощью логистической регрессии. Дополнительно: с помощью полиномиальной регрессии 3 степени. Сравнение моделей. #### Формулировка задачи: Предсказание доли выбросов CO2 промышленной деятельностью от общего объёма выбросов CO2 страной в определённый год. ## Данные: Этот набор данных обеспечивает углубленный анализ глобальных выбросов CO2 на уровне страны, позволяя лучше понять, какой вклад каждая страна вносит в глобальное совокупное воздействие человека на климат. Он содержит информацию об общих выбросах, а также от добычи и сжигания угля, нефти, газа, цемента и других источников. Данные также дают разбивку выбросов CO2 на душу населения по странам, показывая, какие страны лидируют по уровням загрязнения, и определяют потенциальные области, где следует сосредоточить усилия по сокращению выбросов. Этот набор данных необходим всем, кто хочет получить информацию о своем воздействии на окружающую среду или провести исследование тенденций международного развития. Данные организованы с использованием следующих столбцов: + Country: название страны + ISO 3166-1 alpha-3: трехбуквенный код страны + Year: год данных исследования + Total: общее количество CO2, выброшенный страной в этом году + Coal: количество CO2, выброшенное углем в этом году + Oil: количество выбросов нефти + Gas: количество выбросов газа + Cement: количество выбросов цемента + Flaring: сжигание на факелах уровни выбросов + Other: другие формы, такие как промышленные процессы + Per Capita: столбец «на душу населения» ### Какие технологии использовались: Используемые библиотеки: * pandas * math * sklearn ### Как запустить: * установить python, sklearn, pandas, math * запустить проект (стартовая точка - main.py) ### Что делает программа: * Загружает набор данных из файла 'CO2.csv', который содержит информацию о выбросах странами CO2 в год от различной промышленной деятельности. * Очищает набор данных путём удаления строк с нулевыми значениями и глобальными значениями по всем странам (строки 'Global') из набора. * Добавляет в набор столбец с хеш-кодом наименования страны. * Добавляет в набор столбец 'procent other' - процент выбросов в процессе промышленной деятельности от общего объема выбросов страны за год. * Выбирает набор признаков (features) из данных, которые будут использоваться для обучения моделей регрессии. * Определяет задачу регрессии, где целевой переменной (task) является 'procent other'. * Делит данные на обучающий и тестовый наборы для обеих задач с использованием функции train_test_split. Тестовый набор составляет 1% от исходных данных. * Создает и обучает модели регрессии LogisticRegression и PolynomialFeatures. * Предсказывает значения целевой переменной на тестовых наборах. * Оценивает качество моделей с помощью среднеквадратичной ошибки. #### Результаты работы программы: ![Result](img.png) ### Вывод: Среднеквадратичная ошибка полиномиальной модели равна 0.37, логистической - 2.35. Следовательно, полиномиальная модель предсказывает долю выбросов промышленной деятельностью от общего объёма выбросов CO2 страной в определённый год более точно и лучше всего соответствовует данному набору данных из двух потенциальных моделей.