Python 中的分位数函数
Quantile functions in Python
我无法找到 Python 中众所周知的概率分布的分位数函数,它们是否存在?特别是,是否存在逆正态分布函数?我在 Numpy 或 Scipy.
中都找不到任何内容
检查 scipy.stats 中任何分布 class 的 .ppf() 方法。
这相当于分位数函数(也称为百分比点函数或逆 CDF)
来自 scipy.stats 的 exponential distribution 的示例:
# analysis libs
import scipy
import numpy as np
# plotting libs
import matplotlib as mpl
import matplotlib.pyplot as plt
# Example with the exponential distribution
c = 0
lamb = 2
# Create a frozen exponential distribution instance with specified parameters
exp_obj = scipy.stats.expon(c,1/float(lamb))
x_in = np.linspace(0,1,200) # 200 numbers in [0,1], input for ppf()
y_out = exp_obj.ppf(x_in)
plt.plot(x_in,y_out) # graphically check the results of the inverse CDF
这似乎是新的,但我发现 this 关于 numpy 和分位数。也许你可以看看(未测试)
我无法找到 Python 中众所周知的概率分布的分位数函数,它们是否存在?特别是,是否存在逆正态分布函数?我在 Numpy 或 Scipy.
中都找不到任何内容检查 scipy.stats 中任何分布 class 的 .ppf() 方法。 这相当于分位数函数(也称为百分比点函数或逆 CDF)
来自 scipy.stats 的 exponential distribution 的示例:
# analysis libs
import scipy
import numpy as np
# plotting libs
import matplotlib as mpl
import matplotlib.pyplot as plt
# Example with the exponential distribution
c = 0
lamb = 2
# Create a frozen exponential distribution instance with specified parameters
exp_obj = scipy.stats.expon(c,1/float(lamb))
x_in = np.linspace(0,1,200) # 200 numbers in [0,1], input for ppf()
y_out = exp_obj.ppf(x_in)
plt.plot(x_in,y_out) # graphically check the results of the inverse CDF
这似乎是新的,但我发现 this 关于 numpy 和分位数。也许你可以看看(未测试)