# Dynamic random walk for beta distributed variable

**URL:** <https://discourse.mc-stan.org/t/dynamic-random-walk-for-beta-distributed-variable/27351>\
**Category:** Modeling\
**Created:** [May 4, 2022, 12:45pm UTC](https://discourse.mc-stan.org/t/dynamic-random-walk-for-beta-distributed-variable/27351 "2022-05-04T12:45:40Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Dirk\_Nachbar1](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.mc-stan.org/dirk_nachbar1/32/13370_2.png) [@Dirk\_Nachbar1](https://discourse.mc-stan.org/u/Dirk_Nachbar1)\
**Post date:** [May 4, 2022, 12:45pm UTC](https://discourse.mc-stan.org/t/dynamic-random-walk-for-beta-distributed-variable/27351/1 "2022-05-04T12:45:40Z")

</div>

I wanted to model a (0, 1) bound variable over time, so I used this random walk model using the beta proportion distribution. Basically mu\_t depends on the previous mu. In a sense beta\_prop is conjugate prior in here.

Any comments welcome.

```nohighlight
data {
  int n;
  vector[n] x;
}

parameters {
  vector<lower=0, upper=1>[n] mu;
  vector<lower=0>[2] kappa;
}

model {
  // https://mc-stan.org/docs/2_22/functions-reference/beta-proportion-distribution.html
  mu[1] ~ beta(1, 1);
  kappa ~ gamma(5, 1);
  x[1] ~ beta_proportion(mu[1], kappa[1]);
  for (t in 2:n) {
    mu[t] ~ beta_proportion(mu[t - 1], kappa[2]);
    x[t] ~ beta_proportion(mu[t], kappa[1]);
  }
}

```
