Skip to content

Instantly share code, notes, and snippets.

View demodw's full-sized avatar

David Westergaard demodw

View GitHub Profile
functions {
real pr_same(int K, vector data_a, vector data_b, vector theta, vector mu, vector sigma ) {
vector[K] ps_a;
vector[K] ps_b;
vector[K] ps;
// Compute log probability for each observation coming from the cluster.
// P(a | y, theta, mu, sigma) = log(theta) + log(normal(data, mu, sigma))
for (k in 1:K) {
ps_a[k] <- log(theta[k]) + normal_log(data_a, mu[k], sigma[k]);
data {
int<lower=1> N; // Number of samples
int<lower=1> M; // Number of dimensions
int<lower=1> K; // Number of mixtures. Set to 1,000 at the moment.
vector<lower=0>[K] alpha; // Parameter for Dirichlet prior. Set to 1.0 in list of length K.
vector[M] y[N]; // Vector containing the NxM dimensional data
}
parameters {
simplex[K] theta; // Mixing proportions
vector[K] mu; // Mean value for each mixture component
data {
int<lower=1> N; // Number of samples
int<lower=1> M; // Number of dimensions
int<lower=1> K; // Number of mixtures. Set to 1,000 at the moment.
vector<lower=0>[K] alpha; // Parameter for Dirichlet prior. Set to 1.0 in list of length K.
}
parameters {
simplex[K] theta; // Mixing proportions
vector[K] mu; // Mean value for each mixture component
vector<lower=0>[K] sigma; // Scale of each mixture component
data {
int<lower=1> N; // Number of samples
int<lower=1> M; // Number of dimensions
int<lower=1> K; // Number of mixtures. Set to 1,000 at the moment.
vector[M] y[N]; // Vector containing the NxM dimensional data
vector<lower=0>[K] alpha; // Parameter for Dirichlet prior. Set to 1.0/K in list of length K.
}
parameters {
simplex[K] theta; // Mixing proportions
data {
// number of measurements
int<lower=0> Ntotal; // Number of measurements
// Measurement results
vector[Ntotal] y;
// Subject
int<lower=0> Nsubj; // Number of individuals
int<lower=1,upper=Nsubj> subj[Ntotal];
data {
// number of measurements
int<lower=0> Ntotal; // Number of measurements
// Measurement results
vector[Ntotal] y;
// Subject
int<lower=0> Nsubj; // Number of individuals
int<lower=1,upper=Nsubj> subj[Ntotal];
data {
// number of measurements
int<lower=0> Ntotal; // Number of measurements
// Measurement results
real y[Ntotal];
// Subject
int<lower=0> Nsubj; // Number of individuals
int<lower=1,upper=Nsubj> subj[Ntotal];