动态数据集上的二项式和泊松分布

时间:2019-09-18 04:30:21

标签: python dataset distribution poisson binomial-cdf

我有一些大数据集,它们本质上是离散的。我想将该数据放入几个分布函数中,以了解该数据中的异常值。但是我找不到一些变量,例如“ p”值和要实现的数据方差。有识别这些变量值的通用方法吗?

2 个答案:

答案 0 :(得分:1)

我认为您正在寻找Chi-Square Goodness-of-fit test。它能够测试数据样本是否来自具有特定分布的总体,并适用于二项分布和泊松分布等离散分布。也可以在以下位置找到有关如何在Python中执行此分析的更多信息:Performing a Chi-Square goodness-of-fit test

char*

要得出预期的分布,可以使用:

>>> from scipy.stats import chisquare
>>> chisquare(f_obs=[16, 18, 16, 14, 12, 12], f_exp=[16, 16, 16, 16, 16, 8])
(3.5, 0.62338762774958223)

如果您想选择一个尽可能适合您的数据的分布,则可以尝试通过使用分布的参数来优化拟合优度。

您的问题对我来说还不是很清楚,因此目前恐怕无法为您提供进一步的帮助,但是我认为这里至少介绍了大多数导入实用程序。祝你好运!

答案 1 :(得分:0)

怎么样:

def poisson(k, lamb):
        return (lamb ** k / factorial(k)) * np.exp(-lamb)


entries, bin_edges, patches = plt.hist(data_list, density=True, bins=100, range=[0, 50])
# calculate binmiddles
bin_middles = 0.5 * (bin_edges[1:] + bin_edges[:-1])

# fit with curve_fit
bin_middles_filtered = [bin_middles[i] for i in range(len(entries)) if entries[i] > 0.001]
parameters, cov = curve_fit(poisson, bin_middles, entries)

这为您提供了泊松函数及其参数