m15.5 <- ulam(
alist(
# K as function of B and M
K ~ dnorm( mu , sigma ),
mu <- a + bB*B_merge + bM*M,
# M and B correlation
MB ~ multi_normal( c(muM,muB) , Rho_BM , Sigma_BM ),
matrix[29,2]:MB <<- append_col( M , B_merge ),
# define B_merge as mix of observed and imputed values
vector[29]:B_merge <- merge_missing( B , B_impute ),
# priors
c(a,muB,muM) ~ dnorm( 0 , 0.5 ),
c(bB,bM) ~ dnorm( 0, 0.5 ),
sigma ~ dexp( 1 ),
Rho_BM ~ lkj_corr(2),
Sigma_BM ~ exponential(1)
) , data=dat_list , chains=4 , cores=4 )
Full Flavor Imputation
"OPUIFS QPTTJCJMJUZ JT UIBU TPNF PUIFS WBSJBCMF JOĘVFODFT UIF
B
B_obs
K
M
R_B
U
/PX . JOĘVFODFT 3#
XIJDI NFBOT GPS FYBNQMF UIBU TQFDJFT XJUI
PS MFTT
MJLFMZ UP IBWF NJTTJOH WBMVFT JO #ļįŀ
ćJT DPVME IBQQFO JG
FTUFE JO TNBMM TQFDJFT BOE TP EP OPU PęFO HP UISPVHI UIF USPVCMF
NFBTVSFNFOUT GPS UIFN 8IBU IBQQFOT JO UIJT DBTF ćFSF JT OP
#ļįŀ
UIPVHI 3#
UP , 4P UIF NJTTJOHOFTT QSPDFTT DBO DPOGPVOE PV
DMPTF UIF CBDLEPPS *O UIJT DBTF
XF DBO TIVU UIF CBDLEPPS CZ DPOE
IBWF EPOF UIJT BOZXBZ
CFDBVTF XF XBOU UP UIF EJSFDU JOĘVFODF PG
JOHOFTT JT LOPXO CZ BOPUIFS VOGPSUVOBUFMZ BXLXBSE OBNF
ĺĶŀŀĶĻ
8F EPOU OFFE UP EJTDPWFS UIF NJTTJOHOFTT QSPDFTT BCPWF #VU U
OFFE UP EP 8F OFFE UP JNQVUF NJTTJOH WBMVFT GPS #ļįŀ
8IZ *G X
TQFDJFT
XJUI BOZ NJTTJOH WBMVFT
UIFO XF BSF QPMMVUJOH UIF PUIFS W
QSPDFTT ćJT EJEOU IBQQFO JO UIF QSFWJPVT .$"3
FYBNQMF
CF
EJEOU IBWF BOZ BTTPDJBUJPO XJUI UIF PUIFS WBSJBCMFT $BTF EFMFUJPO