observation = pm.Poisson(“obs”, lambda_, value=count_data,

observed=True)

I am trying to model possion distribution and not able to understand what really oberserve=true do and what is its inference in terms of understanding?

observation = pm.Poisson(“obs”, lambda_, value=count_data,

observed=True)

I am trying to model possion distribution and not able to understand what really oberserve=true do and what is its inference in terms of understanding?

`observed=True`

, will be converted to `observed=1`

, meaning one observation with value of `1`

. In general `observed`

is not a boolean flag but the values that were observed for that variable.

Thanks for your reply. I am going through a book and in that it is mentioned as :

We also set observed = True to tell PyMC that this should stay fixed in our analysis

Is it means , fixing the data to value 1.

Which book is that? Could it be referring to the old PyMC 2.x library?

Bayesian method for hackers. If it a change from pymc2.x to 4.0. Can you please explain.

@anurag2444 You might want to read the PyMC3 version, whose syntax is much closer to PyMC v4.x (current) than PyMC v2.x: GitHub - CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers: aka "Bayesian Methods for Hackers": An introduction to Bayesian methods + probabilistic programming with a computation/understanding-first, mathematics-second point of view. All in pure Python ;)

It seems like PyMC v2.x used to have the keyword arguments `observed`

and `value`

, whereas in PyMC3 and PyMC v4.x we simply use `observed`

which is either `None`

or a value.

1 Like