Как мы применяем центральную предельную теорему, используя python? - PullRequest
0 голосов
/ 07 ноября 2018

У меня огромный набор данных с 271116 строками данных. Я нормализовал данные, используя метод нормализации z-показателя. Я понятия не имею, знают ли данные на самом деле нормальное распределение. Поэтому я построил простой график плотности с помощью matplotlib:

hdf = df['Height'].plot(kind = 'kde', stacked = False)
plt.show()

Я получил это за результат:

enter image description here

Несмотря на то, что данные кажутся несколько нормальными, могу ли я применить Центральную предельную теорему, в которой я беру средства различных случайных выборок (скажем, 10000 раз), чтобы получить гладкую кривую колокола?

Любая помощь в Python приветствуется, спасибо.

1 Ответ

0 голосов
/ 07 ноября 2018

Что-то вроде:

import numpy as np
sampleMeans = []
for _ in range(100000):
    samples = df['Height'].sample(n=100)
    sampleMean = np.mean(samples)
    sampleMeans.append(sampleMean)

#Now you have a list of sample means to plot - should be normally distributed

Среднее значение распределения должно равняться среднему значению исходных данных, а стандартное отклонение должно быть в десять раз меньше исходных данных. Если результат недостаточно гладкий, увеличьте .sample(n=100) до более высокого значения. Это также уменьшит стандартное отклонение результирующей кривой колокола. Общее правило заключается в том, что стандартное отклонение CLT представляет собой стандартное отклонение данных, деленное на sqrt (n).

Важно отметить, что полученный дистрибутив отличается от оригинала. Это не просто сглаживается с помощью CLT.

...