Задайте случайную величину X с несколькими наблюдениями x1,x2,x3……..x500
Является ли X распределение Гаусса?
Таким образом, чтобы ответить на этот вопрос, QQ Plots выходят на поле и помогают ответить на вопрос.
Хотя доступно больше статистических тестов, таких как тест KS, тест AD, но с помощью графических методов с использованием графика QQ мы можем ответить на вышеуказанный вопрос.
Как построить (теоретически)?
- Сортировать Xi и вычислять процентили
x1,x2…….x500
отсортировать по возрастанию. Так станет похоже
x’1,x’2,……..x’500 (такое, что x’1 меньше x’2)
Теперь вычислите процентили
после вычисления процентилей это станет похоже на
x’5 — — —› 1-й процентиль
x’10 — → 2-й процентиль
x’500 — —› 100-й процентиль
2. мы будем рассматривать случайную величину Y, которая имеет гауссово распределение. Возьмем 1000 одинаковых образцов и, как описано выше, отсортируем их и найдем их процентили.
- После этого мы нанесем процентили случайной величины X на ось y и процентили Y на ось x, таким образом сформировав график Quantile-Quantile.
Практическая реализация с использованием Python
импортировать numpy как np
импортировать pylab
импортировать scipy.stats как статистику
#N(0,1)
std_normal = np.random.normal(loc=0, scale=1, size=1000)
# От 0 до 100-го процентиля std-normal
для i в диапазоне (0,101):
print(i,np.percentile(std_normal,i))
# Генерируем 100 выборок из N(20,5)
измерений = np.random.normal(loc = 20, scale = 5, size = 100)
stats.probplot(measurements, dist=”norm” ,plot=pylab)
pylab.show()
Если ( y и x) для i:1->100 лежат на прямой, то x и y имеют одинаковое семейное распределение.
Примечание: как мой нет. выборки увеличивается Все больше и больше точек начинают лежать на этой прямой.
Здесь мы теперь генерируем 100 выборок из равномерного распределения и строим график зависимости QQ от Y, который является распределением Гаусса.
# сгенерировать 100 выборок из N(20,5)
измерений = np.random.uniform(low=-1, high = 1, size = 100)
stats.probplot(measurements, dist=”norm ", сюжет=pylab)
pylab.show()
На приведенном выше рисунке распределения представлены по двум осям (ось X: нормальное и ось Y: равномерное).
Вывод: Из приведенной выше диаграммы
точки не лежат на линии и, следовательно, удаляются от линии, а в крайнем конце графика точки расходятся больше всего.
Забавная часть заключается в том, что если мы увеличим размер выборки, мы получим значительную разницу.
# сгенерировать 6000 выборок из N(20,5)
измерений = np.random.uniform(low=-1, high = 1, size = 6000)
stats.probplot(measurements, dist=”norm ", сюжет=pylab)
pylab.show()
ЗАКЛЮЧИТЕЛЬНЫЙ ЗАКЛЮЧЕНИЕ
Если большинство точек находятся на прямой линии, т. Е. Распределение по оси X и по оси Y принадлежит одному семейству, а если нет, то случайная величина X принадлежит к другому распределению, чем то, с которым мы сравниваем.