के साथ पोइसन यादृच्छिक मूल्यों को आकर्षित करें मेरी समस्या एन पोइसन यादृच्छिक मूल्यों (RV
) के सबसे प्रभावी तरीके से निकालने के लिए अलग-अलग औसत/दर Lam
के साथ निकालना है। मूल रूप से size(RV) == size(Lam)
।पायथन/न्यूम्पी/एससीपी: विभिन्न लैम्ब्डा
यह एक अनुभवहीन (बहुत धीमी गति से) दिया गया है:
import numpy as NP
def multi_rate_poisson(Lam):
rv = NP.zeros(NP.size(Lam))
for i,lam in enumerate(Lam):
rv[i] = NP.random.poisson(lam=lam, size=1)
return rv
, अपने लैपटॉप पर, 1E6 नमूने के साथ देता है कि:
Lam = NP.random.rand(1e6) + 1
timeit multi_poisson(Lam)
1 loops, best of 3: 4.82 s per loop
यह इस से सुधार करने के लिए संभव है?