【发布时间】:2016-01-08 19:02:31
【问题描述】:
我需要编写一个程序来生成柯西分布的随机实现
位置和单位比例为空。
我还需要在 -5 到 5 个 bin 之间制作直方图,以随机实现 1,000 个点,连同理论曲线确保它们具有相同的单位。
我计算了柯西分布的累积分布函数:
我写了以下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)
我不知道这是否可以接受,因为我正在根据概率密度函数绘制离散值(随机实现)。我怎么能比较他们两个?因为我需要找到上图的分数差,并根据随机实现的大小确定两条曲线之间的全局 rms 偏差。
【问题讨论】:
-
如果您想将概率密度函数与随机实现进行比较,我建议计算给定n的预期实现并将其与随机实现(n = 1000)进行比较。然后将比较两个离散的实现,而一个类似于真实(=随机),另一个类似于理论(=预期)实现。
标签: python histogram montecarlo probability-density rms