Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Перевод СlojurePy_1nav.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
774.32 Кб
Скачать

Булочник господина Пуанкаре

Существует легенда, почти наверняка апокрифическая, которая дает возможность более детально рассмотреть то, каким образом центральная предельная теорема позволяет рассуждать о том, как формируются статистические распределения. Она касается прославленного французского эрудита XIX-ого века Анри Пуанкаре (Henri Poincaré), который, как гласит легенда, в течение одного года каждый день занимался тем, что взвешивал свежую буханку хлеба.

Выпечка хлеба была регламентируемым государством ремеслом, и Пуанкаре обнаружил, что, хотя результаты взвешивания буханок хлеба подчинялись нормальному распределению, пик находился не на публично афишируемом 1 кг, а на 950 г. Он сообщил о булочнике, у которого он регулярно покупал хлеб, властям, и тот был оштрафован.

В следующем году Пуанкаре продолжил взвешивать буханки хлеба того же булочника. Он обнаружил, что среднее значение теперь было равно 1 кг, но это распределение больше не было симметричным вокруг среднего значения. Теперь оно было смещено вправо. А это соответствовало тому, что булочник теперь давал Пуанкаре только самые тяжелые из своих буханок хлеба. Пуанкаре снова сообщил о булочнике властям, и булочник был оштрафован во второй раз.

Было ли это на самом деле или нет здесь не суть важно; этот пример всего лишь служит для того, чтобы проиллюстрировать ключевой момент — статистическое распределение последовательности чисел может сообщить нам нечто важное о процессе, который ее создал.

Генерирование распределений

Чтобы развить наше интуитивное понимание относительно нормального распределения и дисперсии, давайте смоделируем честного и нечестного булочника, и для этого воспользуемся функцией генерирования нормально распределенных случайных величин stats.norm.rvs. (rvs от англ. normal variates, т.е. случайные величины). Честного булочника можно смоделировать в виде нормального распределения со средним значением 1000, что соответствует справедливой буханке хлеба весом 1 кг. При этом мы допустим наличие дисперсии в процессе выпекания, которая приводит к стандартному отклонению в 30г.

def honest_baker(mu, sigma):

'''Модель честного булочника'''

return pd.Series( stats.norm.rvs(loc, scale, size=10000) )

def ex_1_18():

'''Смоделировать честного булочника на гистограмме'''

honest_baker(1000, 30).hist(bins=25)

plt.xlabel('Честный булочник')

plt.ylabel('Частота')

plt.show()

Приведенный выше пример построит гистограмму, аналогичную следующей:

Теперь смоделируем булочника, который продает только самые тяжелые буханки хлеба. Мы разобьем последовательность на группы по тринадцать элементов (на "чертовы дюжины") и отберем максимальное значение в каждой:

def dishonest_baker(mu, sigma):

'''Модель нечестного булочника'''

xs = stats.norm.rvs(loc, scale, size=10000)

return pd.Series( map(max, bootstrap(xs, 13)) )

def ex_1_19():

'''Смоделировать нечестного булочника на гистограмме'''

dishonest_baker(950, 30).hist(bins=25)

plt.xlabel('Нечестный булочник')

plt.ylabel('Частота')

plt.show()

Приведенный выше пример создаст гистограмму, аналогичную следующей:

Совершенно очевидно, что эта гистограмма выглядит не совсем так, как другие, которые мы видели. Среднее значение по-прежнему равно 1 кг, но разброс значений вокруг среднего больше не является симметричным. Мы говорим, что эта гистограмма показывает смещенное нормальное распределение.