簡體   English   中英

應用 poisson.cdf 在 pandas dataframe 中創建列

[英]Applying poisson.cdf to create a column in a pandas dataframe

我有一個 pandas dataframe 有兩列,比如 x 和 y。 對於每一行,x 是服從泊松分布的隨機變量的平均值。 我想添加第三列 z,使得 z = 隨機抽取小於 y 的概率。

對於給定的行,假設 x = 15,我想知道隨機抽取小於 y = 10 的概率。我知道我可以使用:

from scipy.stats import poisson
x = 15
y = 10
z = poisson.cdf(y, x)
z

返回 0.118

如何為 pandas dataframe 中的每一行執行此操作,創建第三列?

您可以使用apply方法:

df = pd.DataFrame({"x": [15, 15, 15], "y": [10, 15, 20]})

df["z"] = df.apply(lambda r: poisson.cdf(r.y, r.x), axis=1)
print(df)

結果:

    x   y         z
0  15  10  0.118464
1  15  15  0.568090
2  15  20  0.917029

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM