Построение гистограммы с теоретической кривой: случайная реализация

Мне нужно написать программу, которая генерирует случайные реализации распределения Коши.

с нулевым местоположением и единицей измерения.

Также мне нужно сделать гистограмму между -5 и 5 ячейками для случайной реализации 1000 точек, вместе с теоретической кривой, убедившись, что они имеют одинаковые единицы.

Я рассчитал кумулятивную функцию распределения для распределения Коши:

И я написал следующий код на Python:

from __future__ import division
import scipy
import random
import matplotlib.pyplot as plt
import numpy as np
import math as m


valuesX = []
for q in range(1000):
    R = random.random()
    x = m.tan(m.pi*(R-0.5)) #Cumulative Function
    valuesX.append(x)

z = np.linspace(-10,10,1000)
y = 1/(m.pi*(1+z**2)) #Theoretical Cauchy

plt.plot(y,z)
plt.hist(valuesX, bins = 50, range = [-5,5], normed=True)

Мои результаты:  Гистограмма случайной реализации распределения Коши

Я не знаю, приемлемо ли это, поскольку я рисую дискретные значения (случайную реализацию) в зависимости от функции плотности вероятности. Как я мог сравнить их двоих? так как мне нужно найти дробную разницу для графика выше и определить глобальные среднеквадратичные отклонения между обеими кривыми как функцию размера случайной реализации.


person prgalois    schedule 11.10.2015    source источник
comment
Если вы хотите сравнить функцию плотности вероятности со случайной реализацией, я предлагаю вычислить ожидаемую реализацию для данного n и сравнить ее со случайной реализацией (n = 1000). Затем будет сравнение двух дискретных реализаций, при этом одна напоминает реальную (= случайную), а другая - теоретическую (= ожидаемую) реализацию.   -  person Nikolas Rieble    schedule 10.06.2016


Ответы (1)


Если у вас большое количество точек выборки и ячейки гистограммы достаточно узкие, то то, что вы уже сделали, должно быть в порядке. В этом случае настройка «normed = True» в plt.hist () даст вам хорошее приближение к плотности вероятности в центре каждого бина. Затем ошибка выборки будет выражаться как квадратный корень из числа выборок в каждом бине.

С другой стороны, если количество выборок меньше, так что каждая ячейка гистограммы должна быть шире, чтобы содержать более нескольких выборок, тогда сравнение между гистограммой и теоретической функцией плотности вероятности становится более тонким. В этом случае необходимо учесть, что каждый интервал представляет собой интеграл плотности вероятности по протяженности каждого интервала.

Итак, для интервала, охватывающего диапазон [a, b], необходимо вычислить следующий интеграл:

введите описание изображения здесь

При умножении на общее количество выборок это дает количество выборок, которое вы в среднем ожидаете в пределах заданного интервала.

Для удобства эту формулу можно также переписать так, чтобы она имела следующий вид:

введите описание изображения здесь

который должен иметь лучшую числовую точность, когда бины тонкие (т.е. b не намного больше, чем a). Эта формула также проясняет, как для очень тонких интервалов можно восстановить выражение для самой плотности вероятности.

person rwp    schedule 11.03.2018