Pergunta

Eu estou lutando para descobrir como usar o pacote scipy.distributions e se perguntou se alguém poderia postar algum código de exemplo para mim. Parece fazer tudo que eu preciso, eu só não consigo descobrir como usá-lo.

Eu preciso gerar duas distribuições, um log-normal e um poisson. Eu sei que a variância e lambda para cada um.

Os links para recursos iria funcionar tão bem.

Foi útil?

Solução

Eu suponho que você quer dizer as distribuições em scipy.stats. Para criar uma distribuição, gerar variates aleatórias e calcular o pdf:

Python 2.5.1 (R251: 54863, 04 de fevereiro de 2008, 21:48:13) [GCC 4.0.1 (Apple Inc. construir 5465)] no darwin Digite "help", "copyright", "créditos" ou "licença" para mais informações.

>>> from scipy.stats import poisson, lognorm
>>> myShape = 5;myMu=10
>>> ln = lognorm(myShape)
>>> p = poisson(myMu)
>>> ln.rvs((10,)) #generate 10 RVs from ln
array([  2.09164812e+00,   3.29062874e-01,   1.22453941e-03,
         3.80101527e+02,   7.67464002e-02,   2.53530952e+01,
         1.41850880e+03,   8.36347923e+03,   8.69209870e+03,
         1.64317413e-01])
>>> p.rvs((10,)) #generate 10 RVs from p
array([ 8,  9,  7, 12,  6, 13, 11, 11, 10,  8])
>>> ln.pdf(3) #lognorm PDF at x=3
array(0.02596183475208955)

Outros métodos (e no resto da documentação scipy.stats) podem ser encontrados no novo SciPy site de documentação .

Outras dicas

Aqui está um código de exemplo: distribuições de probabilidade em SciPy

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top