IIS_2023_1/arzamaskina_milana_lab_5
2023-12-02 20:24:38 +04:00
..
CO2.csv arzamaskina_milana_lab_5 is ready 2023-12-02 20:24:38 +04:00
img.png arzamaskina_milana_lab_5 is ready 2023-12-02 20:24:38 +04:00
main.py arzamaskina_milana_lab_5 is ready 2023-12-02 20:24:38 +04:00
README.md arzamaskina_milana_lab_5 is ready 2023-12-02 20:24:38 +04:00

Лабораторная работа №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

Вывод:

Среднеквадратичная ошибка полиномиальной модели равна 0.37, логистической - 2.35. Следовательно, полиномиальная модель предсказывает долю выбросов промышленной деятельностью от общего объёма выбросов CO2 страной в определённый год более точно и лучше всего соответствовует данному набору данных из двух потенциальных моделей.