Skip to content

Instantly share code, notes, and snippets.

@jrnold
Last active August 29, 2015 14:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jrnold/78594018af5b8aa36652 to your computer and use it in GitHub Desktop.
Save jrnold/78594018af5b8aa36652 to your computer and use it in GitHub Desktop.
data {
int jj_n;
int jj_idx[jj_n];
int jj_groups[jj_n];
...
}
parameters {
vector[3] beta;
...
}
model {
beta ~ normal(0, 10);
for (i in 1:jj_n) {
y[jj_idx[i]] ~ normal(beta[jj_groups[i]] * x[jj_idx[i]], sigma);
}
...
}
jj<-c(1,2,3,NA,NA,NA,1,2,3,NA,NA,NA,1,2,3)
jj_n <- sum(!is.na(jj))
jj_idx <- which(!is.na(jj))
jj_groups <- jj[!is.na(jj)]
data {
int n_groups;
int beta2_const_n;
int beta2_const_idx[beta2_obs_n];
int beta2_param_n;
int beta2_param_idx[beta2_obs_n];
}
parameters {
vector[n_groups] beta1;
vector[beta2_n_obs] beta2_param;
...
}
transformed parameters {
vector[N] p;
vector[n_groups] beta2;
for (i in 1:beta2_const_n) {
beta2[beta2_const_idx[i]] <- 0.0;
}
for (i in 1:beta2_param_n) {
beta2[beta2_param_idx[i]] <- beta2_param[i];
}
for (i in 1:N) {
p[i] <- beta1[kk[n]] * x1[gg[n]]] + beta2[kk[n]] * x2[gg[n]];
}
...
}
...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment