Работа с выбросами
Часть раздела Статистика для машинного обучения путешествия по Machine Learning на Coddy. Урок 27 из 64.
Десять квартир использовали примерно по 10 м³ воды каждая, но из-за утечки в одной из них расход вырос до 64. Можно исключить это значение или ограничить его ближайшей границей:
np.clip(a, low, high) ограничивает значения во всём массиве:
water = np.array([8, 11, 9, 10, 12, 9, 64, 10, 11, 8])
low, high = 6.0, 14.0 # границы межквартильного размаха
dropped = water[(water >= low) & (water <= high)]
capped = np.clip(water, low, high)
print(len(dropped), len(capped))
print(capped)Это выводит:
9 10
[ 8. 11. 9. 10. 12. 9. 14. 10. 11. 8.]Модель может подстроиться под это единственное плоское значение, поэтому решите, что делать, до обучения. Исправьте или пропустите опечатки; сохраните реальные экстремальные значения или ограничьте их. Никогда не удаляйте данные молча: укажите, сколько значений вы изменили.
Задание
СреднеВ приложении для велопоездок записаны средние скорости 15 поездок в speeds; две выглядят странно. В стартовом коде границы IQR помещены в low и high.
- Создай
dropped— скорости в пределах границ (включая обе границы), — иcapped. - Выведи по одной строке для keep, drop и cap: количество поездок, их среднее и
.std(), округлённые до 2 знаков после запятой. - Выведи, у скольких поездок изменились значения после ограничения.
Для 10 поездок другого велосипедиста:
Keep: 10 rides, mean 21.38, std 6.58
Drop: 9 rides, mean 19.2, std 0.77
Cap: 10 rides, mean 19.45, std 1.04
Capping changed 1 of 10 ridesПопробуйте сами
import numpy as np
# Возвращает нижнюю и верхнюю границы IQR для массива
def iqr_fences(a):
q1 = np.percentile(a, 25)
q3 = np.percentile(a, 75)
iqr = q3 - q1
return q1 - 1.5 * iqr, q3 + 1.5 * iqr
speeds = np.array([24.5, 22.8, 26.1, 23.9, 3.1, 25.4, 21.7, 24.2, 27.3, 78.4, 23.1, 25.8, 22.4, 24.9, 26.6])
low, high = iqr_fences(speeds)
# Напишите свой код ниже
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Статистика для машинного обучения
1Центр и разброс
Среднее и медианаПроцентили и квартилиДисперсия и стандартное отклонениеВыборка или генеральная совокупность?Самое частое значениеПовторение: сроки доставки4Выборки и генеральные совокупности
Генеральная совокупность и выборкаСредние значения выборок различаютсяРаспределение выборочных среднихЧем больше выборка, тем меньше шумИтоги: опрос жителей города2Распределения
Гистограммы плотностиФормы распределения данныхНормальная криваяПравило 68–95–99,7Z-оценкиПовторение: время работы батареи3Вероятность с помощью моделирования
Вероятность как частотаЗакон больших чиселСуммы значений на кубикахМатематическое ожиданиеУсловная вероятностьПовторение: шансы в игре в кости6Взаимосвязи
Чтение диаграмм рассеянияКорреляцияМатрица корреляцийТепловые карты корреляцийКорреляция не означает причинностьПовторение: мороженое и солнцеПотренируйтесь самостоятельно: Онлайн-компилятор Python