- •Python для науки о данных: перезагрузка Ремикс популярной книги Генри Гарнера "Clojure для науки о данных", 2015
- •Об авторе оригинала книги
- •Содержание
- •Предисловие автора к оригиналу книги на Clojure
- •Статистика
- •Скачивание исходного кода примеров
- •Обследование данных
- •Исправление данных
- •Описательные статистики
- •Среднее значение
- •Интерпретация математических обозначений
- •Медиана
- •Дисперсия
- •Квантили
- •Дискретизация данных
- •Гистограммы
- •Нормальное распределение
- •Центральная предельная теорема
- •Булочник господина Пуанкаре
- •Генерирование распределений
- •Асимметрия
- •Графики нормального распределения
- •Способы сопоставительной визуализации
- •Коробчатые диаграммы
- •Интегральные функции распределения
- •Важность визуализации
- •Визуализация данных об электорате
- •Обработка столбцов
- •Добавление производных столбцов
- •Сопоставительная визуализация электоральных данных
- •Визуализация электоральных данных рф
- •Сравнительная визуализация
- •Функции массы вероятности
- •Точечные графики
- •Настройка прозрачности разброса
Функции массы вероятности
Функция массы вероятности (ФМВ), от англ. Probability Mass Function (PMF), чаще известная, как функция вероятности дискретной случайной величины, имеет много общего с гистограммой. Однако, вместо того, чтобы показывать количества значений, попадающих в группы, она показывает вероятность, что взятое из распределения число будет в точности равно заданному значению. Поскольку функция закрепляет вероятность за каждым значением, которое может быть возвращено распределением, и поскольку вероятности измеряются по шкале от 0 до 1, (где 1 соответствует полной определенности), то площадь под функцией массы вероятности равна 1.
Таким образом функция массы вероятности гарантирует, что площадь под нашими графиками будет между наборами данных сопоставима. Однако у нас все еще имеется одно затруднение, которое заключается в том, что размеры избирательных округов — и поэтому средних значений распределений — несопоставимы. Это затруднение решается отдельно — при помощи нормализации.
Нормализация данных не связана с нормальным распределением. Этот термин обозначает общую задачу выравнивания одной или большего количества последовательностей значений. В зависимости от контекста оно может означать попросту корректировку значений таким образом, чтобы они находились в пределах одинакового диапазона, либо более сложные процедуры, которые обеспечивают, чтобы распределения данных были одинаковыми. В целом задача нормализации состоит в том, чтобы упростить сравнение двух или больше серий данных.
Существует неисчислимое количество способов нормализации данных, однако один из самых основных обеспечивает, чтобы каждый числовой ряд находился в диапазоне от 0 до 1. Ни одно наше значение не находится в отрицательном диапазоне, поэтому мы можем выполнить нормализацию, попросту разделив каждое индивидуальное значение на самое большое:
def plot_as_pmf(dt, label, ax):
'''График функции вероятности дискретной случайной величины
(или функции массы вероятности)'''
s = pd.cut(dt, bins=40, labels=False) # разбить на 40 групп
pmf = s.value_counts().sort_index() / len(s) # подсчитать кво в группах
newax = pmf.plot(label=label, grid=True, ax=ax)
return newax
Имея в распоряжении приведенную выше функцию, мы теперь можем нормализовать данные по Великобритании и России и изобразить их рядом на тех же осях:
def ex_1_32():
'''Сопоставление данных явки по Великобритании и РФ,
данные нормализованы на основе функции массы вероятностей'''
ax = plot_as_pmf(load_uk_victors()['Явка'], 'Великобритания', None)
plot_as_pmf(load_ru_victors()['Явка'], 'Россия', ax)
plt.xlabel('Интервальные группы явки')
plt.ylabel('Вероятность')
plt.legend(loc='best')
plt.show()
Приведенный выше пример сгенерирует следующий график:
После нормализации эти два распределения вполне готовы для проведения сопоставительного анализа. Теперь становится совершенно очевидным, каким образом — несмотря на более низкую среднюю явку, чем в Великобритании (0.6366 против 0.6523) — на российских выборах произошел массивный подъем явки близкий к 100%. Поскольку результаты голосования представляют собой объединенный эффект многих независимых волеизъявлений, они ожидаемо будут соответствовать центральной предельной теореме и будут приближенно нормально распределенными. В сущности, за редким исключением, как в Канаде, например, где население имеет гетерогенный характер (там французскоговорящая и англоговорящая группы населения в результате дают бимодальную кривую), результаты выборов по всему миру такому ожиданию обычно соответствуют.
Данные российских выборов показывают чрезвычайно аномальный результат, хотя и не настолько высокий, как модальный пик в центре распределения, который приблизительно соответствует 50% явке. Исследователь Питер Климек (Peter Klimek) и его коллеги в Венском медицинском университете пошли дальше и предположили, что этот результат является явным признаком подтасовки результатов голосования.
