Матрица корреляций
Часть раздела Статистика для машинного обучения путешествия по Machine Learning на Coddy. Урок 31 из 64.
Выбор признаков означает одновременное сравнение каждого столбца с целевым. df.corr(numeric_only=True) строит матрицу корреляций, пропуская текстовые столбцы:
laptops = pd.DataFrame({
"model": ["Arc", "Bolt", "Cove", "Dune", "Echo", "Flux", "Gale"],
"ram_gb": [8, 16, 8, 32, 16, 16, 32],
"weight_kg": [2.3, 1.4, 2.0, 1.1, 1.8, 1.2, 1.6],
"battery_h": [7, 9, 10, 13, 6, 11, 8],
"price": [650, 1100, 700, 1600, 900, 1350, 1200],
})
corr = laptops.corr(numeric_only=True)Каждая ячейка — это значение r для её строки и столбца. Чтобы найти наиболее сильный признак, упорядочьте столбец цены по величине, игнорируя знаки:
ranked = np.abs(corr["price"]).sort_values(ascending=False)
print(ranked.index[1])Это выводит:
weight_kgИндекс 0 — это сам price, со значением 1. Более лёгкие ноутбуки стоят дороже: -0.95 — самая сильная связь.
Задание
СреднеЭнергетическая компания провела опрос среди 24 домов зимой. В homes.csv есть код home и числовые столбцы area_m2, insulation_cm, residents, outside_temp_c и heating_kwh. Программа считывает целевой столбец.
- Выведи столбец целевой переменной из матрицы корреляции, округлив значения до 2 знаков после запятой.
- Выведи
Strongest:, название другого столбца, наиболее сильно связанного с целевым, и егоr, как показано ниже.
Для другого опроса и целевого столбца heating_kwh:
windows 0.72
floors 0.68
age_years 0.23
heating_kwh 1.00
Name: heating_kwh, dtype: float64
Strongest: windows (r = 0.72)Попробуйте сами
import numpy as np
import pandas as pd
homes = pd.read_csv("homes.csv")
target = input()
# Напишите свой код ниже
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Статистика для машинного обучения
1Центр и разброс
Среднее и медианаПроцентили и квартилиДисперсия и стандартное отклонениеВыборка или генеральная совокупность?Самое частое значениеПовторение: сроки доставки4Выборки и генеральные совокупности
Генеральная совокупность и выборкаСредние значения выборок различаютсяРаспределение выборочных среднихЧем больше выборка, тем меньше шумИтоги: опрос жителей города2Распределения
Гистограммы плотностиФормы распределения данныхНормальная криваяПравило 68–95–99,7Z-оценкиПовторение: время работы батареи3Вероятность с помощью моделирования
Вероятность как частотаЗакон больших чиселСуммы значений на кубикахМатематическое ожиданиеУсловная вероятностьПовторение: шансы в игре в кости6Взаимосвязи
Чтение диаграмм рассеянияКорреляцияМатрица корреляцийТепловые карты корреляцийКорреляция не означает причинностьПовторение: мороженое и солнцеПотренируйтесь самостоятельно: Онлайн-компилятор Python