Tạo python biến ngẫu nhiên poisson

Phân phối Poisson mô tả xác suất đạt được k thành công trong một khoảng thời gian nhất định

Nếu một biến ngẫu nhiên X tuân theo phân phối Poisson, thì xác suất mà X = k thành công có thể được tính theo công thức sau

P[X=k] = λk * e– λ / k

ở đâu

  • λ. số lần thành công trung bình xảy ra trong một khoảng thời gian cụ thể
  • k. số lần thành công
  • e. một hằng số bằng xấp xỉ 2. 71828

Hướng dẫn này giải thích cách sử dụng phân phối Poisson trong Python

Cách tạo phân phối Poisson

Bạn có thể sử dụng thuốc độc. hàm rvs[mu, size] để tạo các giá trị ngẫu nhiên từ phân phối Poisson với giá trị trung bình và cỡ mẫu cụ thể

from scipy.stats import poisson

#generate random values from Poisson distribution with mean=3 and sample size=10
poisson.rvs[mu=3, size=10]

array[[2, 2, 2, 0, 7, 2, 1, 2, 5, 5]]

Cách tính xác suất bằng phân phối Poisson

Bạn có thể sử dụng thuốc độc. pmf[k, mu] và poisson. hàm cdf[k, mu] để tính xác suất liên quan đến phân bố Poisson

ví dụ 1. Xác suất bằng một số giá trị

Trung bình mỗi ngày cửa hàng bán được 3 quả táo. Xác suất mà họ sẽ bán được 5 quả táo vào một ngày nhất định là bao nhiêu?

from scipy.stats import poisson

#calculate probability
poisson.pmf[k=5, mu=3]

0.100819

Xác suất để cửa hàng bán được 5 quả táo trong một ngày đã cho là 0. 100819

ví dụ 2. Xác suất nhỏ hơn một số giá trị

Một cửa hàng nọ trung bình mỗi ngày bán được bảy quả bóng đá. Xác suất mà cửa hàng này bán được bốn hoặc ít hơn bốn quả bóng đá trong một ngày nhất định là bao nhiêu?

from scipy.stats import poisson

#calculate probability
poisson.cdf[k=4, mu=7]

0.172992

Xác suất mà cửa hàng bán được bốn hoặc ít hơn bốn quả bóng đá trong một ngày nhất định là 0. 172992

ví dụ 3. Xác suất lớn hơn một số giá trị

Một cửa hàng nọ trung bình mỗi ngày bán được 15 hộp cá ngừ. Xác suất mà cửa hàng này bán được hơn 20 hộp cá ngừ trong một ngày nhất định là bao nhiêu?

Với sự giúp đỡ của numpy. ngẫu nhiên. poisson[], chúng ta có thể lấy các mẫu ngẫu nhiên từ phân phối poisson và trả lại các mẫu ngẫu nhiên bằng cách sử dụng phương thức này

phân phối chất độc

cú pháp. cục mịch. ngẫu nhiên. poisson[lam=1. 0, kích thước=Không có]

Trở lại. Trả lại các mẫu ngẫu nhiên dưới dạng mảng numpy

Ví dụ 1

Trong ví dụ này, chúng ta có thể thấy rằng bằng cách sử dụng numpy này. ngẫu nhiên. poisson[], chúng ta có thể lấy các mẫu ngẫu nhiên từ phân phối poisson bằng cách sử dụng phương thức này

Nó ước tính số lần một sự kiện có thể xảy ra trong một thời gian xác định. e. g. Nếu ai đó ăn hai lần một ngày thì xác suất anh ta sẽ ăn ba lần là bao nhiêu?

Nó có hai tham số

lam - tỷ lệ hoặc số lần xuất hiện đã biết e. g. 2 cho vấn đề trên

size - Hình dạng của mảng được trả về

Ví dụ

Tạo phân phối 1x10 ngẫu nhiên cho lần xuất hiện 2

từ numpy nhập ngẫu nhiên

x = ngẫu nhiên. poisson[lam=2, size=10]

in[x]

Tự mình thử »

Trực quan hóa phân phối Poisson

Ví dụ

từ numpy nhập ngẫu nhiên
nhập matplotlib. pyplot dưới dạng plt
nhập seaborn dưới dạng sns

sns. distplot [ngẫu nhiên. poisson[lam=2, size=1000], kde=False]

plt. trình diễn[]

Kết quả

Tự mình thử »

Sự khác biệt giữa phân phối bình thường và Poisson

Phân phối chuẩn là liên tục trong khi poisson là rời rạc

Nhưng chúng ta có thể thấy rằng tương tự như nhị thức đối với phân phối poisson đủ lớn, nó sẽ trở thành tương tự như phân phối bình thường với một số std dev và mean

Ví dụ

từ numpy nhập ngẫu nhiên
nhập matplotlib. pyplot dưới dạng plt
nhập seaborn dưới dạng sns

sns. distplot [ngẫu nhiên. normal[loc=50, scale=7, size=1000], hist=False, label='normal']
sns. distplot [ngẫu nhiên. poisson[lam=50, size=1000], hist=False, label='poisson']

plt. trình diễn[]

Kết quả

Tự mình thử »

Sự khác biệt giữa phân phối Poisson và nhị thức

Sự khác biệt rất tinh tế, đó là phân phối nhị thức dành cho các thử nghiệm rời rạc, trong khi phân phối poisson dành cho các thử nghiệm liên tục

Nhưng đối với phân phối nhị thức n rất lớn và gần bằng không p gần giống với phân phối poisson sao cho n * p gần bằng với lam

Làm cách nào để tạo số ngẫu nhiên với phân phối Poisson trong Python?

Với sự trợ giúp của numpy. ngẫu nhiên. phương pháp poisson[] , chúng ta có thể lấy các mẫu ngẫu nhiên từ phân phối poisson và trả về các mẫu ngẫu nhiên bằng phương pháp này. Trở lại. Trả lại các mẫu ngẫu nhiên dưới dạng mảng numpy.

Làm cách nào để tạo số ngẫu nhiên với phân phối Poisson trong R?

Cách thực hiện… .
Tương tự như phân phối chuẩn, chúng ta có thể sử dụng rpois để tạo mẫu từ phân phối Poisson. > đặt. hạt giống[123] > poisson = 0.

Chủ Đề