Python中正态分布尾部的示例

时间:2015-03-04 14:56:17

标签: python scipy simulation

我正在编写一些模拟,我发现我需要对正态分布的尾部进行过采样,以便获得具有特定变量的低值的足够样本。还有什么比这更好的吗?

from scipy.stats import norm, uniform
tail_high = .01
n_samples = 1000
tail_rvs = norm.ppf(uniform.rvs(0, tail_high, n_samples))

1 个答案:

答案 0 :(得分:1)

假设您确实需要从正态分布中进行采样,您可以DIY http://en.m.wikipedia.org/wiki/Marsaglia_polar_methodhttp://en.m.wikipedia.org/wiki/Box - Muller_transform

目前在scipy中实现了truncnorm的一个未解决的问题 https://github.com/scipy/scipy/issues/2477。原始票证提供了几个替代实现的链接。