2009-10-31 18 views
13

Ce ne sono built-in librerie in Python o Numpy per generare numeri casuali in base a varie distribuzioni comuni, come ad esempio:Come posso generare numeri casuali in Python?

  • Normale
  • Poisson
  • esponenziale
  • Bernoulli

E vari altri?

Esistono librerie di questo tipo con distribuzioni multi-variate?

risposta

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

Bernoulli, Poisson, norma, expon e molti altri sono documentati 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)) 

Tutte le distribuzioni definite scipy.stats hanno un'interfaccia comune al pdf, CDF, RVS (variabili casuali) . Maggiori informazioni here.

+1

Import soul. Accidenti a te, Python! –

+0

il documento è ora su http://docs.scipy.org/doc/scipy/reference/stats.html – oluc

+0

Il tuo secondo link dice "** Proibito **" ... "Non hai il permesso di accedere /~dkuhlman/scipy_course_01.html su questo server. " --- sembra linkrot –

5

Il modulo random ha tonnellate di funzioni per generare numeri casuali in molti modi. Non sono sicuro che abbia una variabilità multipla.

Numpy.random sarebbe il prossimo luogo da cercare.

+1

Mi sono permesso di aggiungere un link alla documentazione per 'random' –

Problemi correlati