2009-10-31 5 views
13

Có bất kỳ built-in thư viện bằng Python hoặc NumPy để tạo số ngẫu nhiên dựa trên các bản phân phối phổ biến khác nhau, chẳng hạn như:Làm cách nào để tạo số ngẫu nhiên bằng Python?

  • Bình thường
  • Poisson
  • Exponential
  • Bernoulli

Và nhiều thứ khác?

Có thư viện nào như vậy với bản phân phối đa biến không?

Trả lời

27
#!/usr/bin/env python 
from scipy.stats import bernoulli,poisson,norm,expon 

Bernoulli, Poisson, chuẩn mực, expon và nhiều người khác được ghi nhận here

print(norm.rvs(size=30)) 
print(bernoulli.rvs(.3,size=30)) 
print(poisson.rvs(1,2,size=30)) 
print(expon.rvs(5,size=30)) 

Tất cả các bản phân phối quy định tại scipy.stats có một giao diện chung cho các pdf, lũy, RVs (variates ngẫu nhiên) . Thông tin thêm here.

+1

Nhập linh hồn. Damn bạn Python! –

+0

tài liệu hiện có tại http://docs.scipy.org/doc/scipy/reference/stats.html – oluc

+0

Liên kết thứ hai của bạn có "** Bị cấm **" ... "Bạn không có quyền truy cập /~dkuhlman/scipy_course_01.html trên máy chủ này. " --- trông giống như linkrot –

5

Mô-đun random có nhiều hàm để tạo số ngẫu nhiên theo nhiều cách. Không chắc nó có đa biến đổi.

Numpy.random sẽ là nơi tiếp theo để xem.

+1

Tôi đã tự do thêm liên kết vào tài liệu cho 'random' –