lecture 5
play

Lecture 5 Random Effects Models 2/01/2018 1 Random Effects Models - PowerPoint PPT Presentation

Lecture 5 Random Effects Models 2/01/2018 1 Random Effects Models 2 Sleep Study Data 6.00 308 ## 5 357 4.00 308 ## 6 415 5.00 308 ## 7 382 ## 321 8 290 7.00 308 ## 9 431 8.00 308 ## 10 466 9.00 308 ## # ... with 170


  1. Lecture 5 Random Effects Models 2/01/2018 1

  2. Random Effects Models 2

  3. Sleep Study Data 6.00 308 ## 5 357 4.00 308 ## 6 415 5.00 308 ## 7 382 ## 321 8 290 7.00 308 ## 9 431 8.00 308 ## 10 466 9.00 308 ## # ... with 170 more rows 3.00 308 4 The average reaction time per day for subjects in a sleep deprivation study. On day ## 0 the subjects had their normal amount of sleep . Starting that night they were restricted to 3 hours of sleep per night. The observations represent the average reaction time on a series of tests given each day to each subject. sleep = lme4::sleepstudy %>% tbl_df () sleep ## # A tibble: 180 x 3 ## Reaction Days Subject ## <dbl> <dbl> <fct> 1 ## 250 0 308 ## 2 259 1.00 308 ## 3 251 2.00 308 3

  4. EDA 4 308 309 310 330 331 400 332 333 Reaction 334 335 337 300 349 350 351 352 369 370 200 371 0.0 2.5 5.0 7.5 372 Days

  5. EDA (small multiples) 5 308 309 310 330 331 400 300 200 332 333 334 335 337 400 300 Reaction 200 349 350 351 352 369 400 300 200 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 370 371 372 400 300 200 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 Days

  6. Bayesian Linear Model sleep_lm = ”model{ # Likelihood for(i in 1:length(y)){ y[i] ~ dnorm(mu[i], tau) mu[i] = beta[1] + beta[2]*x[i] y_pred[i] ~ dnorm(mu[i],tau) } # Prior for beta beta[1] ~ dnorm(0,1/10000) beta[2] ~ dnorm(0,1/10000) # Prior for sigma / tau sigma ~ dunif(0, 100) tau = 1/(sigma*sigma) }” 6

  7. MCMC Diagnostics 7 270 260 beta[1] 250 240 230 15.0 12.5 chain estimate beta[2] 1 10.0 2 7.5 55 50 sigma 45 40 0 100 200 300 400 500 iteration

  8. Model fit 8 308 309 310 330 331 400 300 200 332 333 334 335 337 400 300 200 Reaction 0.95 0.8 349 350 351 352 369 0.5 400 300 200 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 370 371 372 400 300 200 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 Days

  9. Residuals 9 150 100 50 resid 0 −50 −100 0.0 2.5 5.0 7.5 Days

  10. Residuals by subject 10 308 309 310 330 331 150 100 50 0 −50 −100 332 333 334 335 337 150 100 50 0 −50 −100 resid 349 350 351 352 369 150 100 50 0 −50 −100 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 370 371 372 150 100 50 0 −50 −100 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 Days

  11. Random Intercept Model 11

  12. Coding 1.00 310 1.00 309 2 ## 5 199 0 310 3 ## 6 194 3 ## 4 ## 7 322 0 330 4 ## 8 300 1.00 330 4 205 2 sleep = sleep %>% ## 1 mutate (Subject_index = as.integer (Subject)) sleep[ c (1:2,11:12,21:22,31:32),] ## # A tibble: 8 x 4 ## Reaction Days Subject Subject_index ## <dbl> <dbl> <fct> <int> 250 309 0 308 1 ## 2 259 1.00 308 1 ## 3 223 0 12

  13. Random Intercept Model Let 𝑗 represent each observation and 𝑘(𝑗) be subject in oberservation 𝑗 then 𝛽 ) 𝛾 ∼ 𝒪(0, 10 4 ) 13 𝑧 𝑗 = 𝛽 𝑘(𝑗) + 𝛾 × Days + 𝜗 𝑗 𝛽 𝑘 ∼ 𝒪(𝛾 𝛽 , 𝜏 2 𝜗 𝑗 ∼ 𝒪(0, 𝜏 2 ) 𝛾 𝛽 ∼ 𝒪(0, 10 4 ) 𝜏, 𝜏 𝛽 ∼ Unif (0, 10 2 )

  14. Random Intercept Model - JAGS beta_alpha ~ dnorm(0,1/10000) }” tau = 1/(sigma*sigma) sigma ~ dunif(0, 100) beta ~ dnorm(0,1/10000) tau_alpha = 1/(sigma_alpha*sigma_alpha) sigma_alpha ~ dunif(0, 100) } sleep_ri = ”model{ alpha[j] ~ dnorm(beta_alpha, tau_alpha) for(j in 1:18) { } y_pred[i] ~ dnorm(mu[i],tau) mu[i] = alpha[Subject_index[i]] + beta*Days[i] Reaction[i] ~ dnorm(mu[i],tau) for(i in 1:length(Reaction)) { 14

  15. MCMC Diagnostics 15 13 12 11 beta 10 9 8 280 beta_alpha 260 240 chain estimate 220 1 2 35 sigma 30 80 sigma_alpha 60 40 0 100 200 300 400 500 iteration

  16. Model fit 16 308 309 310 330 331 500 400 300 200 100 332 333 334 335 337 500 400 300 200 Reaction 0.95 100 0.8 349 350 351 352 369 500 0.5 400 300 200 100 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 370 371 372 500 400 300 200 100 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 Days

  17. 17 Model fit - lines 400 350 Reaction 300 250 200 0.0 2.5 5.0 7.5 Days

  18. Random Effects 18 300 estimate 200 0 5 10 15 j

  19. 19 Residuals 100 50 resid 0 −50 −100 0.0 2.5 5.0 7.5 Days

  20. Residuals by subject 20 308 309 310 330 331 100 50 0 −50 −100 332 333 334 335 337 100 50 0 −50 −100 resid 349 350 351 352 369 100 50 0 −50 −100 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 370 371 372 100 50 0 −50 −100 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 Days

  21. Why not a fixed effect for Subject? 10.4471 ## Subject352 290.3188 <2e-16 *** 23.26 10.4471 ## Subject351 242.9950 <2e-16 *** 25.51 10.4471 ## Subject350 266.4999 <2e-16 *** 21.89 ## Subject349 228.7317 27.79 <2e-16 *** 31.45 10.4471 ## Subject337 328.6182 <2e-16 *** 19.43 10.4471 ## Subject335 202.9673 <2e-16 *** 23.76 10.4471 10.4471 <2e-16 *** <2e-16 *** 25.92 p-value: < 2.2e-16 ## F-statistic: 901.6 on 19 and 161 DF, 0.9896 0.9907, Adjusted R-squared: ## Multiple R-squared: ## Residual standard error: 30.99 on 161 degrees of freedom ## 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 ## Signif. codes: ## --- <2e-16 *** 10.4471 ## Subject369 258.9319 ## Subject372 270.7833 <2e-16 *** 23.73 10.4471 ## Subject371 247.8813 <2e-16 *** 23.41 10.4471 ## Subject370 244.5990 <2e-16 *** 24.79 10.4471 ## Subject334 248.1993 25.75 We are not going to bother with the Bayesian model here to avoid the headache of 3Q ## Days Estimate Std. Error t value Pr(>|t|) ## ## Coefficients: ## 131.159 15.215 -0.341 -16.389 ## -100.540 Max Median 0.8042 1Q Min ## ## Residuals: ## ## lm(formula = Reaction ~ Days + Subject - 1, data = sleep) ## Call: ## summary (l) l = lm (Reaction ~ Days + Subject - 1, data=sleep) dummy coding and the resulting 𝛾 s. 10.4673 13.02 10.4471 10.4471 ## Subject333 269.0555 <2e-16 *** 24.91 10.4471 ## Subject332 260.1993 <2e-16 *** 25.11 10.4471 ## Subject331 262.3333 <2e-16 *** 24.52 ## Subject330 256.1186 <2e-16 *** <2e-16 *** 17.60 10.4471 ## Subject310 183.8985 <2e-16 *** 16.09 10.4471 ## Subject309 168.1302 <2e-16 *** 28.24 10.4471 ## Subject308 295.0310 21

  22. Why not a fixed effect for Subject? 10.4471 ## Subject352 290.3188 <2e-16 *** 23.26 10.4471 ## Subject351 242.9950 <2e-16 *** 25.51 10.4471 ## Subject350 266.4999 <2e-16 *** 21.89 ## Subject349 228.7317 27.79 <2e-16 *** 31.45 10.4471 ## Subject337 328.6182 <2e-16 *** 19.43 10.4471 ## Subject335 202.9673 <2e-16 *** 23.76 10.4471 10.4471 <2e-16 *** <2e-16 *** 25.92 p-value: < 2.2e-16 ## F-statistic: 901.6 on 19 and 161 DF, 0.9896 0.9907, Adjusted R-squared: ## Multiple R-squared: ## Residual standard error: 30.99 on 161 degrees of freedom ## 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 ## Signif. codes: ## --- <2e-16 *** 10.4471 ## Subject369 258.9319 ## Subject372 270.7833 <2e-16 *** 23.73 10.4471 ## Subject371 247.8813 <2e-16 *** 23.41 10.4471 ## Subject370 244.5990 <2e-16 *** 24.79 10.4471 ## Subject334 248.1993 25.75 We are not going to bother with the Bayesian model here to avoid the headache of Max 10.4673 ## Days Estimate Std. Error t value Pr(>|t|) ## ## Coefficients: ## 131.159 15.215 -0.341 -16.389 ## -100.540 3Q 10.4471 Median 1Q Min ## ## Residuals: ## ## lm(formula = Reaction ~ Days + Subject - 1, data = sleep) ## Call: ## summary (l) dummy coding and the resulting 𝛾 s. 0.8042 13.02 <2e-16 *** ## Subject308 295.0310 ## Subject333 269.0555 <2e-16 *** 24.91 10.4471 ## Subject332 260.1993 <2e-16 *** 25.11 10.4471 ## Subject331 262.3333 <2e-16 *** 24.52 10.4471 ## Subject330 256.1186 <2e-16 *** 17.60 10.4471 ## Subject310 183.8985 <2e-16 *** 16.09 10.4471 ## Subject309 168.1302 <2e-16 *** 28.24 10.4471 21 l = lm (Reaction ~ Days + Subject - 1, data=sleep)

  23. Comparing Model fit 22 308 309 310 330 331 400 300 200 332 333 334 335 337 400 300 model Reaction 200 Fixed Effect 349 350 351 352 369 Random Intercept 400 300 200 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 370 371 372 400 300 200 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 Days

  24. Random effects vs fixed effects 23 300 estimate 200 alpha[1] alpha[2] alpha[3] alpha[4] alpha[5] alpha[6] alpha[7] alpha[8] alpha[9] alpha[10] alpha[11] alpha[12] alpha[13] alpha[14] alpha[15] alpha[16] alpha[17] alpha[18] term

  25. Random Intercept Model (strong prior for 𝜏 𝛽 ) beta_alpha ~ dnorm(0,1/10000) }” tau = 1/(sigma*sigma) sigma ~ dunif(0, 100) beta ~ dnorm(0,1/10000) tau_alpha = 1/(sigma_alpha*sigma_alpha) sigma_alpha ~ dunif(0, 10) } sleep_ri2 = ”model{ alpha[j] ~ dnorm(beta_alpha, tau_alpha) for(j in 1:18) { } y_pred[i] ~ dnorm(mu[i],tau) mu[i] = alpha[Subject_index[i]] + beta*Days[i] Reaction[i] ~ dnorm(mu[i],tau) for(i in 1:length(Reaction)) { 24

  26. Comparing Model fit 25 308 309 310 330 331 400 300 200 332 333 334 335 337 400 300 model Reaction 200 Fixed Effect 349 350 351 352 369 Random Intercept (strong Random Intercept (weak) 400 300 200 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 370 371 372 400 300 200 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 0.0 2.5 5.0 7.5 Days

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend