85 lines
6.0 KiB
Markdown
85 lines
6.0 KiB
Markdown
# Лабораторная работа №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 страной в определённый год более точно
|
||
и лучше всего соответствовует данному набору данных из двух потенциальных моделей.
|