- •Python для науки о данных: перезагрузка Ремикс популярной книги Генри Гарнера "Clojure для науки о данных", 2015
- •Об авторе оригинала книги
- •Содержание
- •Предисловие автора к оригиналу книги на Clojure
- •Статистика
- •Скачивание исходного кода примеров
- •Обследование данных
- •Исправление данных
- •Описательные статистики
- •Среднее значение
- •Интерпретация математических обозначений
- •Медиана
- •Дисперсия
- •Квантили
- •Дискретизация данных
- •Гистограммы
- •Нормальное распределение
- •Центральная предельная теорема
- •Булочник господина Пуанкаре
- •Генерирование распределений
- •Асимметрия
- •Графики нормального распределения
- •Способы сопоставительной визуализации
- •Коробчатые диаграммы
- •Интегральные функции распределения
- •Важность визуализации
- •Визуализация данных об электорате
- •Обработка столбцов
- •Добавление производных столбцов
- •Сопоставительная визуализация электоральных данных
- •Визуализация электоральных данных рф
- •Сравнительная визуализация
- •Функции массы вероятности
- •Точечные графики
- •Настройка прозрачности разброса
Асимметрия
Асимметрией
называется смещение распределения
относительно ее моды. Отрицательная
асимметрия или левое смещение
кривой указывает на то, что площадь под
графиком больше на левой стороне моды.
Положительная асимметрия или правое
смещение кривой указывает на то, что
площадь под графиком больше на правой
с
тороне
моды.
Библиотека Pandas располагает функцией skew для измерения асимметрии:
def ex_1_20():
'''Получить коэффициент ассиметрии нормального распределения'''
s = dishonest_baker(950, 30)
return { 'среднее' : s.mean(),
'медиана' : s.median(),
'ассиметрия': s.skew() }
# {'ассиметрия': 0.4202176889083849,
# 'медиана': 998.7670301469957,
# 'среднее': 1000.059263920949}
Приведенный выше пример показывает, что коэффициент асимметрии в выпечке от нечестного булочника составляет порядка 0.4. Этот коэффициент количественно определяет степень скошенности, которая видна на гистограмме.
Графики нормального распределения
Ранее в этой главе мы познакомились с квантилями как средством описания статистического распределения данных. Напомним, что функция quantile принимает число между 0 и 1 и возвращает значение последовательности в этой точке. 0.5-квантиль соответствует значению медианы.
Изображение квантилей данных относительно квантилей нормального распределения позволяет увидеть, каким образом наши измеренные данные соотносятся с теоретическим распределением. Подобные графики называются квантильными графиками, или диаграммами квантиль-квантиль, графиками Q-Q, от англ. Q-Q plot. Они предоставляют быстрый и интуитивно понятный способ определить степень нормальности статистического распределения. Для данных, которые близки к нормальному распределению, квантильный график покажет прямую линию. Отклонения от прямой линии показывают, каким образом данные отклоняются от идеализированного нормального распределения.
Теперь построим квантильные графики для честного и нечестного булочников. Функция qqplot принимает список точек данных и формирует точечный график выборочных квантилей, отображаемых на графике относительно квантилей из теоретического нормального распределения:
def qqplot( xs ):
'''Квантильный график (график квантиль-квантиль, Q-Q plot)'''
d = {0:sorted(stats.norm.rvs(loc=0, scale=1, size=len(xs))),
1:sorted(xs)}
pd.DataFrame(d).plot.scatter(0, 1, s=5, grid=True)
df.plot.scatter(0, 1, s=5, grid=True)
plt.xlabel('Квантили теоретического нормального распределения')
plt.ylabel('Квантили данных')
plt.title ('Квантильный график', fontweight='semibold')
def ex_1_21():
'''Показать квантильные графики
для честного и нечестного булочников'''
qqplot( honest_baker(1000, 30) )
plt.show()
qqplot( dishonest_baker(950, 30) )
plt.show()
Приведенный выше пример создаст следующие ниже графики:
Выше показан квантильный график для честного булочника. Далее идет квантильный график для нечестного булочника:
Тот факт, что линия имеет изогнутую форму, показывает, что данные положительно асимметричны; наклон в другую сторону будет означать отрицательную асимметрию. Квантильный график в сущности позволяет легко различить целый ряд отклонений от стандартного нормального распределения, как показано на следующем ниже рисунке:
Надписи: нормально распределенные, тяжелые хвосты, легкие хвосты, скошенность влево, скошенность вправо, раздельные кластеры
Квантильные графики сопоставляют статистическое распределение честного и нечестного булочника с теоретическим нормальным распределением. В следующем разделе мы сравним несколько альтернативных способов визуального сопоставления двух (или более) измеренных последовательностей значений.
