[過去ログ] 高校数学の質問スレ(医者・東大卒専用) Part438 (1002レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
866: 06/05(木)13:25 ID:tGlaBVfa(1) AAS
 > stancode(fit) 
 // generated with brms 2.22.0 
 functions { 
   /* compute monotonic effects 
    * Args: 
    *   scale: a simplex parameter 
    *   i: index to sum over the simplex 
    * Returns: 
    *   a scalar between 0 and rows(scale) 
    */ 
   real mo(vector scale, int i) { 
     if (i == 0) { 
       return 0; 
     } else { 
       return rows(scale) * sum(scale[1:i]); 
     } 
   } 
 } 
 data { 
   int<lower=1> N;  // total number of observations 
   array[N] int Y;  // response variable 
   int<lower=1> K;  // number of population-level effects 
   matrix[N, K] X;  // population-level design matrix 
   int<lower=1> Kc;  // number of population-level effects after centering 
   int<lower=1> Ksp;  // number of special effects terms 
   int<lower=1> Imo;  // number of monotonic variables 
   array[Imo] int<lower=1> Jmo;  // length of simplexes 
   array[N] int Xmo_1;  // monotonic variable 
   vector[Jmo[1]] con_simo_1;  // prior concentration of monotonic simplex 
   int prior_only;  // should the likelihood be ignored? 
 } 
 transformed data { 
   matrix[N, Kc] Xc;  // centered version of X without an intercept 
   vector[Kc] means_X;  // column means of X before centering 
   for (i in 2:K) { 
     means_X[i - 1] = mean(X[, i]); 
     Xc[, i - 1] = X[, i] - means_X[i - 1]; 
   } 
 } 
 parameters { 
   vector[Kc] b;  // regression coefficients 
   real Intercept;  // temporary intercept for centered predictors 
   simplex[Jmo[1]] simo_1;  // monotonic simplex 
   vector[Ksp] bsp;  // special effects coefficients 
 } 
 transformed parameters { 
   real lprior = 0;  // prior contributions to the log posterior 
   lprior += normal_lpdf(b[1] | 0.15, 0.3); 
   lprior += normal_lpdf(b[2] | 0.08, 0.3); 
   lprior += normal_lpdf(b[3] | 0.8, 0.3); 
   lprior += normal_lpdf(b[4] | 0.5, 0.3); 
   lprior += normal_lpdf(Intercept | -4, 2); 
   lprior += dirichlet_lpdf(simo_1 | con_simo_1); 
   lprior += normal_lpdf(bsp[1] | -0.5, 0.3); 
 } 
 model { 
   // likelihood including constants 
   if (!prior_only) { 
     // initialize linear predictor term 
     vector[N] mu = rep_vector(0.0, N); 
     mu += Intercept; 
     for (n in 1:N) { 
       // add more terms to the linear predictor 
       mu[n] += (bsp[1]) * mo(simo_1, Xmo_1[n]); 
     } 
     target += bernoulli_logit_glm_lpmf(Y | Xc, mu, b); 
   } 
   // priors including constants 
   target += lprior; 
 } 
 generated quantities { 
   // actual population-level intercept 
   real b_Intercept = Intercept - dot_product(means_X, b); 
 } 
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.031s