2013-04-15 16 views
8

Sto provando a generare scipy.stats.pareto.rvs (b, loc = 0, scale = 1, size = 1) con seme diverso.scipy.stats seed?

In numpy possiamo effettuare il seed utilizzando numpy.random.seed (seed = 233423).

C'è un modo per seminare il numero casuale generato dalle statistiche di scipy.

Nota: non sto utilizzando il parto numpy perché voglio dare valori diversi per la scala.

risposta

12

scipy.stats utilizza solo numpy.random per generare i numeri casuali, quindi numpy.random.seed() funzionerà anche qui. Ad esempio,

import numpy as np 
from scipy.stats import pareto 
b = 0.9 
np.random.seed(seed=233423) 
print pareto.rvs(b, loc=0, scale=1, size=5) 
np.random.seed(seed=233423) 
print pareto.rvs(b, loc=0, scale=1, size=5) 

stampa [ 9.7758784 10.78405752 4.19704602 1.19256849 1.02750628] due volte.

+0

Grazie, funziona .. – ashok

+1

C'è un modo * no * per dare a scipy.stats un oggetto numpy.random.RandomState? Preferirei non toccare il flusso casuale predefinito. –

+2

Apparentemente non (come se ora), confermato da Robert Kern sulla mailing list di scipy-user! –

Problemi correlati