ren*_*kre 3 python poisson scipy dataframe scikit-learn
我一直在尝试找到一种方法来使我的某些列(包含用户 点击数据)适合python中的泊松分布。这些列(例如,click_website_1,click_website_2)的值可能在1到数千之间。我正在尝试这样做,因为一些资源建议这样做:
我们建议不应通过对数转换来对计数数据进行分析,而应使用基于泊松和负二项式分布的模型。
我在scipy和中找到了一些方法numpy,但是这些方法似乎会生成一些具有泊松分布的随机数。但是,我感兴趣的是使我自己的数据适合于泊松分布。有库建议在Python中执行此操作吗?
这是检查数据是否遵循泊松分布的快速方法。您可以在假设它遵循带速率参数的泊松分布的情况下绘制图lambda = data.mean()
import numpy as np
from scipy.misc import factorial
def poisson(k, lamb):
"""poisson pdf, parameter lamb is the fit parameter"""
return (lamb**k/factorial(k)) * np.exp(-lamb)
# lets collect clicks since we are going to need it later
clicks = df["clicks_website_1"]
Run Code Online (Sandbox Code Playgroud)
在这里,我们使用pmf进行位置分布。
现在让我们进行一些建模,从数据(click_website_one)中,我们将使用MLE估计泊松参数,结果只是平均值
lamb = clicks.mean()
# plot the pmf using lamb as as an estimate for `lambda`.
# let sort the counts in the columns first.
clicks.sort().apply(poisson, lamb).plot()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2422 次 |
| 最近记录: |