class: middle, center # SEM, Revealed. ## Modeling connections with latent variables and regression pathways. <img src="images/seachildrens.jpg" width="167" /> ### <span style="font-size: 80%;">Slides available at <https://tinyurl.com/CHBD-slides24></span> <span style="font-size: 80%;">PDF slides at <https://tinyurl.com/CHBD-pdf24></span> --- name: my-info class: middle, center ## Waylon Howard | Biostatistician @ BEAR/CHBD --- name: bear class: middle, left <img src="images/BEARlogo.png" width="300px"/> <br> <small>was founded with a collaborative spirit and lofty objective: to deliver comprehensive data management, advanced analytics, and expert statistical, epidemiologic, and qualitative support…</small> <br> <small>By alleviating external consultants, designing studies in-house, and engaging investigators directly, we’re able to provide responsive, efficient, and high-quality data support at a fraction of the going cost.</small> ??? Notes here --- name: biostats class: middle, left ## Biostatistics @ BEAR <small>Supports stakeholders throughout SCRI by helping them make better decisions using data</small> --- name: toc # Topics - [How to measure it?](#measure) - [Fitting a CFA model.](#cfa) - [Estimators.](#ml) - [Model Fit.](#fit) - [Statistical Code.](#software) - [Example SEM Models.](#results) - [Power.](#results) --- layout: true <div class="my-footer"><span>Slides at <u>tinyurl.com/CHBD-slides24</u>                   Return to <u><a style="color:White;" href="slide_deck.html#toc">Topic List</a></u></span></div> --- name: measure class: inverse, center, middle # Perceived Social Support ## <span style="color:#FFCC66;">How to measure it?</span> --- ## Self-report questions *** 1. <span style="font-size: 80%;">My friends really try to help me.</span> 1. <span style="font-size: 80%;">I can count on my friends when things go wrong.</span> 1. <span style="font-size: 80%;">I can talk about my problems with my friends.</span> *** <br> <table class="table" style="margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:center;"> Very Strongly Disagree </th> <th style="text-align:center;"> Strongly Disagree </th> <th style="text-align:center;"> Mildly Disagree </th> <th style="text-align:center;"> Neutral </th> <th style="text-align:center;"> Mildly Agree </th> <th style="text-align:center;"> Strongly Agree </th> <th style="text-align:center;"> Very Strongly Agree </th> </tr> </thead> <tbody> <tr> <td style="text-align:center;"> 1 </td> <td style="text-align:center;"> 2 </td> <td style="text-align:center;"> 3 </td> <td style="text-align:center;"> 4 </td> <td style="text-align:center;"> 5 </td> <td style="text-align:center;"> 6 </td> <td style="text-align:center;"> 7 </td> </tr> </tbody> </table> <br> <center><medium> Higher scores = More Perceived Social Support </medium></center> --- class: middle, left 1. My friends really try to help me. *** <img class="rectangle" src="images/circleditem.png" width="800px"/> <br> .pull-left[ <span style="color:#3F4A13;"> `\(X_i\)` </span> = <span style="color:#052147;"> `\(T_i\)` </span> + (<span style="color:#BD8C00;"> `\(S_i\)` </span> + <span style="color:black;"> `\(e_i\)` </span>) <br> <span style="font-size: 70%;"><span style="color:#052147;"> `\(T_i\)` </span> is the 'true' score</span><br> <span style="font-size: 70%;"><span style="color:#BD8C00;"> `\(S_i\)` </span> is item-specific, yet reliable</span><br> <span style="font-size: 70%;"><span style="color:black;"> `\(e_i\)` </span> is random error, or noise</span> ] .pull-right[ <span style="font-size: 60%;">**Use the scoring procedure**: No measurement error (*always perfectly measured*), uniform effectiveness of items (*equal items*), invariance across groups and time.</span> ] --- class: middle, center <img class="rectangle" src="images/cfa1.png" width="800px"/> --- class: middle, center <span style="color:#3F4A13;"> `\(X_i\)` </span> = <span style="color:#052147;"> `\(T_i\)` </span> + (<span style="color:#BD8C00;"> `\(S_i\)` </span> + <span style="color:black;"> `\(e_i\)` </span>) <br> <img class="rectangle" src="images/cfa23.png" width="800px"/> --- name: cfa class: inverse, center, middle # How do we get the true score?<br> ## <span style="color:#FFCC66;">Fitting a CFA model.</span> --- class: middle, center .pull-left[ <img class="rectangle" src="images/cfa4.png" width="300px"/> <span style="font-size: 65%;"> Estimated Parameters: **7** Observed Information: **6**<br> </span> ] .pull-right[ <span style="font-size: 80%;"> **Matrix Formula:** <span style="color:#187EA1;"> `\(\Sigma = \Lambda \Psi \Lambda'+ \Theta\)` </span> </span> <span style="font-size: 50%;"> Σ = **Variance/Covariance Matrix**</span> <br> <table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;font-weight: bold;"> </th> <th style="text-align:center;font-weight: bold;"> X1 </th> <th style="text-align:center;font-weight: bold;"> X2 </th> <th style="text-align:center;font-weight: bold;"> X3 </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;width: 80px; font-weight: bold;border-right:1px solid;"> X1 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 5.66 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> </td> <td style="text-align:center;width: 125px; "> </td> </tr> <tr> <td style="text-align:left;width: 80px; font-weight: bold;border-right:1px solid;"> X2 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 4.90 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 5.50 </td> <td style="text-align:center;width: 125px; "> </td> </tr> <tr> <td style="text-align:left;width: 80px; font-weight: bold;border-right:1px solid;"> X3 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 4.33 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 4.38 </td> <td style="text-align:center;width: 125px; "> 5.63 </td> </tr> </tbody> </table> <span style="font-size: 50%;"> **Implied Variance/Covariance Matrix** </span> <br> <table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;font-weight: bold;"> </th> <th style="text-align:center;font-weight: bold;"> X1 </th> <th style="text-align:center;font-weight: bold;"> X2 </th> <th style="text-align:center;font-weight: bold;"> X3 </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;width: 40px; font-weight: bold;border-right:1px solid;"> X1 </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>11</sub> ψ<sub>11</sub> λ<sub>11</sub> + θ<sub>11</sub> </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> </td> <td style="text-align:center;width: 150px; "> </td> </tr> <tr> <td style="text-align:left;width: 40px; font-weight: bold;border-right:1px solid;"> X2 </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>11</sub> ψ<sub>11</sub> λ<sub>21</sub> </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>21</sub> ψ<sub>11</sub> λ<sub>21</sub> + θ<sub>22</sub> </td> <td style="text-align:center;width: 150px; "> </td> </tr> <tr> <td style="text-align:left;width: 40px; font-weight: bold;border-right:1px solid;"> X3 </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>11</sub> ψ<sub>11</sub> λ<sub>31</sub> </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>21</sub> ψ<sub>11</sub> λ<sub>31</sub> </td> <td style="text-align:center;width: 150px; "> λ<sub>31</sub> ψ<sub>11</sub> λ<sub>31</sub> + θ<sub>33</sub> </td> </tr> </tbody> </table> ] <span style="font-size: 60%;"> *Underidentified*: `\(X + Y = 20\)` </span> --- class: middle, center .pull-left[ <span style="font-size: 50%;"> Variance /Covariance Matrix<br> </span> <table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;font-weight: bold;"> </th> <th style="text-align:center;font-weight: bold;"> X1 </th> <th style="text-align:center;font-weight: bold;"> X2 </th> <th style="text-align:center;font-weight: bold;"> X3 </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;width: 80px; font-weight: bold;border-right:1px solid;"> X1 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 5.66 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> </td> <td style="text-align:center;width: 125px; "> </td> </tr> <tr> <td style="text-align:left;width: 80px; font-weight: bold;border-right:1px solid;"> X2 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 4.90 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 5.50 </td> <td style="text-align:center;width: 125px; "> </td> </tr> <tr> <td style="text-align:left;width: 80px; font-weight: bold;border-right:1px solid;"> X3 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 4.33 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 4.38 </td> <td style="text-align:center;width: 125px; "> 5.63 </td> </tr> </tbody> </table> <span style="font-size: 50%;"> **Just Identified.**<br> </span> <table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;font-weight: bold;"> </th> <th style="text-align:center;font-weight: bold;"> X1 </th> <th style="text-align:center;font-weight: bold;"> X2 </th> <th style="text-align:center;font-weight: bold;"> X3 </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;width: 40px; font-weight: bold;border-right:1px solid;"> X1 </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>11</sub> λ<sub>11</sub> + θ<sub>11</sub> </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> </td> <td style="text-align:center;width: 150px; "> </td> </tr> <tr> <td style="text-align:left;width: 40px; font-weight: bold;border-right:1px solid;"> X2 </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>11</sub> λ<sub>21</sub> </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>21</sub> λ<sub>21</sub> + θ<sub>22</sub> </td> <td style="text-align:center;width: 150px; "> </td> </tr> <tr> <td style="text-align:left;width: 40px; font-weight: bold;border-right:1px solid;"> X3 </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>11</sub> λ<sub>31</sub> </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>21</sub> λ<sub>31</sub> </td> <td style="text-align:center;width: 150px; "> λ<sub>31</sub> λ<sub>31</sub> + θ<sub>33</sub> </td> </tr> </tbody> </table> ] .pull-right[ <span style="font-size: 60%;">Fix the latent variance to 1.0</span> <img class="rectangle" src="images/setscale1.png" width="275px"/> ] --- class: middle, center .pull-left[ <span style="font-size: 50%;"> Variance /Covariance Matrix<br> </span> <table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;font-weight: bold;"> </th> <th style="text-align:center;font-weight: bold;"> X1 </th> <th style="text-align:center;font-weight: bold;"> X2 </th> <th style="text-align:center;font-weight: bold;"> X3 </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;width: 80px; font-weight: bold;border-right:1px solid;"> X1 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 5.66 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> </td> <td style="text-align:center;width: 125px; "> </td> </tr> <tr> <td style="text-align:left;width: 80px; font-weight: bold;border-right:1px solid;"> X2 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 4.90 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 5.50 </td> <td style="text-align:center;width: 125px; "> </td> </tr> <tr> <td style="text-align:left;width: 80px; font-weight: bold;border-right:1px solid;"> X3 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 4.33 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 4.38 </td> <td style="text-align:center;width: 125px; "> 5.63 </td> </tr> </tbody> </table> <span style="font-size: 50%;"> **Just Identified.**<br> </span> <table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;font-weight: bold;"> </th> <th style="text-align:center;font-weight: bold;"> X1 </th> <th style="text-align:center;font-weight: bold;"> X2 </th> <th style="text-align:center;font-weight: bold;"> X3 </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;width: 40px; font-weight: bold;border-right:1px solid;"> X1 </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> ψ<sub>11</sub> + θ<sub>11</sub> </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> </td> <td style="text-align:center;width: 150px; "> </td> </tr> <tr> <td style="text-align:left;width: 40px; font-weight: bold;border-right:1px solid;"> X2 </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> ψ<sub>11</sub> λ<sub>21</sub> </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>21</sub> ψ<sub>11</sub> λ<sub>21</sub> + θ<sub>22</sub> </td> <td style="text-align:center;width: 150px; "> </td> </tr> <tr> <td style="text-align:left;width: 40px; font-weight: bold;border-right:1px solid;"> X3 </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> ψ<sub>11</sub> λ<sub>31</sub> </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>21</sub> ψ<sub>11</sub> λ<sub>31</sub> </td> <td style="text-align:center;width: 150px; "> λ<sub>31</sub> ψ<sub>11</sub> λ<sub>31</sub> + θ<sub>33</sub> </td> </tr> </tbody> </table> ] .pull-right[ <span style="font-size: 60%;">Fix the loading to 1.0</span> <img class="rectangle" src="images/setscale2.png" width="275px"/> ] --- class: middle, center .pull-left[ <span style="font-size: 50%;"> Variance /Covariance Matrix<br> </span> <table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;font-weight: bold;"> </th> <th style="text-align:center;font-weight: bold;"> X1 </th> <th style="text-align:center;font-weight: bold;"> X2 </th> <th style="text-align:center;font-weight: bold;"> X3 </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;width: 80px; font-weight: bold;border-right:1px solid;"> X1 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 5.66 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> </td> <td style="text-align:center;width: 125px; "> </td> </tr> <tr> <td style="text-align:left;width: 80px; font-weight: bold;border-right:1px solid;"> X2 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 4.90 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 5.50 </td> <td style="text-align:center;width: 125px; "> </td> </tr> <tr> <td style="text-align:left;width: 80px; font-weight: bold;border-right:1px solid;"> X3 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 4.33 </td> <td style="text-align:center;width: 125px; border-right:1px solid;"> 4.38 </td> <td style="text-align:center;width: 125px; "> 5.63 </td> </tr> </tbody> </table> <span style="font-size: 50%;"> **Just Identified.**<br> </span> <table class="table table-striped table-hover" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;font-weight: bold;"> </th> <th style="text-align:center;font-weight: bold;"> X1 </th> <th style="text-align:center;font-weight: bold;"> X2 </th> <th style="text-align:center;font-weight: bold;"> X3 </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;width: 40px; font-weight: bold;border-right:1px solid;"> X1 </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> (3-λ<sub>21</sub>-λ<sub>31</sub>) ψ<sub>11</sub> (3-λ<sub>21</sub>-λ<sub>31</sub>) + θ<sub>11</sub> </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> </td> <td style="text-align:center;width: 150px; "> </td> </tr> <tr> <td style="text-align:left;width: 40px; font-weight: bold;border-right:1px solid;"> X2 </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> (3-λ<sub>21</sub>-λ<sub>31</sub>) ψ<sub>11</sub> λ<sub>21</sub> </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>21</sub> ψ<sub>11</sub> λ<sub>21</sub> + θ<sub>22</sub> </td> <td style="text-align:center;width: 150px; "> </td> </tr> <tr> <td style="text-align:left;width: 40px; font-weight: bold;border-right:1px solid;"> X3 </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> (3-λ<sub>21</sub>-λ<sub>31</sub>)ψ<sub>11</sub> λ<sub>31</sub> </td> <td style="text-align:center;width: 150px; border-right:1px solid;"> λ<sub>21</sub> ψ<sub>11</sub> λ<sub>31</sub> </td> <td style="text-align:center;width: 150px; "> λ<sub>31</sub> ψ<sub>11</sub> λ<sub>31</sub> + θ<sub>33</sub> </td> </tr> </tbody> </table> ] .pull-right[ <span style="font-size: 60%;">Constrain loading to average 1.0</span> <img class="rectangle" src="images/setscale3.png" width="325px"/> ] --- class: middle, center .pull-left[ <span style="font-size: 50%;"> Variance /Covariance Matrix<br> </span> <img class="rectangle" src="images/cfa5.png" width="400px"/> ] .pull-right[ <img class="rectangle" src="images/cfa6.png" width="275px"/> ] --- name: ml class: inverse, center, middle # How do we get the numbers?<br> ## <span style="color:#FFCC66;">Estimators.</span> --- class: middle, center ## Maximum Likelihood <span style="font-size: 80%;"> `\(L_i\)` = <span style="color:#C8C5CD;"> `\(\frac {1}{\sqrt{2\pi\sigma^2}}\)` e[-.5 </span> `\(\frac{(Y_i - \mu)^2}{\sigma^2}\)` <span style="color:#C8C5CD;">]</span> <br> > <span style="font-size: 80%;">ML identifies the population parameters that are most likely given the observed data</span><br> > <span style="font-size: 80%;">A likelihood (or log likelihood) function quantifies the fit of the data to the parameters</span><br> > <span style="font-size: 80%;">ML requires a population distribution (normal)</span> --- class: middle, center .pull-left[ <span style="font-size: 50%;"> `\(L_i\)` = <span style="color:#C8C5CD;"> `\(\frac {1}{\sqrt{2\pi\sigma^2}}\)` e[-.5 </span> `\(\frac{(Y_i - \mu)^2}{\sigma^2}\)` <span style="color:#C8C5CD;">]</span> </span> <br> <span style="font-size: 70%;">Applying the density function gives the relative probability `\((L_i)\)` of each score from this normal distribution. </span> <br> <br> <span style="font-size: 60%;">Score `\((\mu\)` = 50.44, `\(\sigma\)` = 58.68 `\()\)` </span> ] .pull-right[ <span style="font-size: 80%;"><table class="table" style="font-size: 12px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:center;"> Person ID </th> <th style="text-align:center;"> Score </th> <th style="text-align:center;"> Likelihood </th> </tr> </thead> <tbody> <tr> <td style="text-align:center;"> 1 </td> <td style="text-align:center;"> 36.6 </td> <td style="text-align:center;"> 0.00661212 </td> </tr> <tr> <td style="text-align:center;"> 2 </td> <td style="text-align:center;"> 41.8 </td> <td style="text-align:center;"> 0.006725313 </td> </tr> <tr> <td style="text-align:center;"> 3 </td> <td style="text-align:center;"> 42.6 </td> <td style="text-align:center;"> 0.006738201 </td> </tr> <tr> <td style="text-align:center;"> 4 </td> <td style="text-align:center;"> 43.1 </td> <td style="text-align:center;"> 0.006745631 </td> </tr> <tr> <td style="text-align:center;"> 5 </td> <td style="text-align:center;"> 43.4 </td> <td style="text-align:center;"> 0.006749858 </td> </tr> <tr> <td style="text-align:center;"> 6 </td> <td style="text-align:center;"> 44.2 </td> <td style="text-align:center;"> 0.006760279 </td> </tr> <tr> <td style="text-align:center;"> 7 </td> <td style="text-align:center;"> 44.9 </td> <td style="text-align:center;"> 0.006768379 </td> </tr> <tr> <td style="text-align:center;"> 8 </td> <td style="text-align:center;"> 46.3 </td> <td style="text-align:center;"> 0.006781711 </td> </tr> <tr> <td style="text-align:center;"> 9 </td> <td style="text-align:center;"> 48.6 </td> <td style="text-align:center;"> 0.006795269 </td> </tr> <tr> <td style="text-align:center;"> 10 </td> <td style="text-align:center;"> 49.0 </td> <td style="text-align:center;"> 0.006796563 </td> </tr> <tr> <td style="text-align:center;"> 11 </td> <td style="text-align:center;"> 50.0 </td> <td style="text-align:center;"> 0.006798419 </td> </tr> <tr> <td style="text-align:center;"> 12 </td> <td style="text-align:center;"> 51.6 </td> <td style="text-align:center;"> 0.006797282 </td> </tr> <tr> <td style="text-align:center;"> 13 </td> <td style="text-align:center;"> 54.6 </td> <td style="text-align:center;"> 0.006781547 </td> </tr> <tr> <td style="text-align:center;"> 14 </td> <td style="text-align:center;"> 54.8 </td> <td style="text-align:center;"> 0.00677987 </td> </tr> <tr> <td style="text-align:center;"> 15 </td> <td style="text-align:center;"> 55.7 </td> <td style="text-align:center;"> 0.006771351 </td> </tr> <tr> <td style="text-align:center;"> 16 </td> <td style="text-align:center;"> 57.2 </td> <td style="text-align:center;"> 0.006753646 </td> </tr> <tr> <td style="text-align:center;"> 17 </td> <td style="text-align:center;"> 57.6 </td> <td style="text-align:center;"> 0.006748188 </td> </tr> <tr> <td style="text-align:center;"> 18 </td> <td style="text-align:center;"> 60.3 </td> <td style="text-align:center;"> 0.006703308 </td> </tr> <tr> <td style="text-align:center;"> 19 </td> <td style="text-align:center;"> 60.9 </td> <td style="text-align:center;"> 0.006691451 </td> </tr> <tr> <td style="text-align:center;"> 20 </td> <td style="text-align:center;"> 65.3 </td> <td style="text-align:center;"> 0.006584073 </td> </tr> </tbody> </table> </span> ] <br> <center><medium> Largest relative probability is for ID 11 </medium></center> --- class: inverse, center, middle <img class="rectangle" src="images/likelihood.png" width="800px"/> --- class: middle, center .pull-left[ <span style="font-size: 70%;">Multiply each `\(L_i\)` to get sample likelihood. </span> <br> <span style="font-size: 40%;">0.0000000000000000000000000000000000000000000378615</span> <br> <span style="font-size: 70%;">To avoid small numbers, we add the log of the likelihood. </span> <br> <span style="font-size: 70%;">-99.9824</span> ] .pull-right[ <span style="font-size: 80%;"><table class="table" style="font-size: 12px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:center;"> Person ID </th> <th style="text-align:center;"> HRQoL </th> <th style="text-align:center;"> Likelihood </th> <th style="text-align:center;"> LogLikelihood </th> </tr> </thead> <tbody> <tr> <td style="text-align:center;"> 1 </td> <td style="text-align:center;"> 36.6 </td> <td style="text-align:center;"> 0.00661212 </td> <td style="text-align:center;"> -5.0189 </td> </tr> <tr> <td style="text-align:center;"> 2 </td> <td style="text-align:center;"> 41.8 </td> <td style="text-align:center;"> 0.006725313 </td> <td style="text-align:center;"> -5.0019 </td> </tr> <tr> <td style="text-align:center;"> 3 </td> <td style="text-align:center;"> 42.6 </td> <td style="text-align:center;"> 0.006738201 </td> <td style="text-align:center;"> -5.0000 </td> </tr> <tr> <td style="text-align:center;"> 4 </td> <td style="text-align:center;"> 43.1 </td> <td style="text-align:center;"> 0.006745631 </td> <td style="text-align:center;"> -4.9989 </td> </tr> <tr> <td style="text-align:center;"> 5 </td> <td style="text-align:center;"> 43.4 </td> <td style="text-align:center;"> 0.006749858 </td> <td style="text-align:center;"> -4.9982 </td> </tr> <tr> <td style="text-align:center;"> 6 </td> <td style="text-align:center;"> 44.2 </td> <td style="text-align:center;"> 0.006760279 </td> <td style="text-align:center;"> -4.9967 </td> </tr> <tr> <td style="text-align:center;"> 7 </td> <td style="text-align:center;"> 44.9 </td> <td style="text-align:center;"> 0.006768379 </td> <td style="text-align:center;"> -4.9955 </td> </tr> <tr> <td style="text-align:center;"> 8 </td> <td style="text-align:center;"> 46.3 </td> <td style="text-align:center;"> 0.006781711 </td> <td style="text-align:center;"> -4.9935 </td> </tr> <tr> <td style="text-align:center;"> 9 </td> <td style="text-align:center;"> 48.6 </td> <td style="text-align:center;"> 0.006795269 </td> <td style="text-align:center;"> -4.9915 </td> </tr> <tr> <td style="text-align:center;"> 10 </td> <td style="text-align:center;"> 49.0 </td> <td style="text-align:center;"> 0.006796563 </td> <td style="text-align:center;"> -4.9913 </td> </tr> <tr> <td style="text-align:center;"> 11 </td> <td style="text-align:center;"> 50.0 </td> <td style="text-align:center;"> 0.006798419 </td> <td style="text-align:center;"> -4.9911 </td> </tr> <tr> <td style="text-align:center;"> 12 </td> <td style="text-align:center;"> 51.6 </td> <td style="text-align:center;"> 0.006797282 </td> <td style="text-align:center;"> -4.9912 </td> </tr> <tr> <td style="text-align:center;"> 13 </td> <td style="text-align:center;"> 54.6 </td> <td style="text-align:center;"> 0.006781547 </td> <td style="text-align:center;"> -4.9935 </td> </tr> <tr> <td style="text-align:center;"> 14 </td> <td style="text-align:center;"> 54.8 </td> <td style="text-align:center;"> 0.00677987 </td> <td style="text-align:center;"> -4.9938 </td> </tr> <tr> <td style="text-align:center;"> 15 </td> <td style="text-align:center;"> 55.7 </td> <td style="text-align:center;"> 0.006771351 </td> <td style="text-align:center;"> -4.9951 </td> </tr> <tr> <td style="text-align:center;"> 16 </td> <td style="text-align:center;"> 57.2 </td> <td style="text-align:center;"> 0.006753646 </td> <td style="text-align:center;"> -4.9977 </td> </tr> <tr> <td style="text-align:center;"> 17 </td> <td style="text-align:center;"> 57.6 </td> <td style="text-align:center;"> 0.006748188 </td> <td style="text-align:center;"> -4.9985 </td> </tr> <tr> <td style="text-align:center;"> 18 </td> <td style="text-align:center;"> 60.3 </td> <td style="text-align:center;"> 0.006703308 </td> <td style="text-align:center;"> -5.0052 </td> </tr> <tr> <td style="text-align:center;"> 19 </td> <td style="text-align:center;"> 60.9 </td> <td style="text-align:center;"> 0.006691451 </td> <td style="text-align:center;"> -5.0069 </td> </tr> <tr> <td style="text-align:center;"> 20 </td> <td style="text-align:center;"> 65.3 </td> <td style="text-align:center;"> 0.006584073 </td> <td style="text-align:center;"> -5.0231 </td> </tr> </tbody> </table> </span> ] <br> <center><medium> Largest relative probability is for ID 11 </medium></center> --- class: inverse, center, middle <img class="rectangle" src="images/loglikelihood.png" width="800px"/> --- name: fit class: middle, center ## Model Fit <img class="rectangle" src="images/fit.png" width="800px"/> <br> <medium> Your data = Model-implied? </medium><br> <span style="font-size: 50%;"> Chi-square `\((\chi^2)\)` = -2 * (Null Loglikelihood - Alternative Loglikelihood) </span> --- class: middle, left <img class="rectangle" src="images/modelfitlineRMSEA.png" width="700px"/> .pull-left[ ## <span style="font-size: 80%;">Absolute Model Fit: </span> <span style="font-size: 70%;">*How far from perfect*: </span> <br> <span style="font-size: 70%;"> **RMSEA**, **SRMR** </span> ] .pull-right[ > <span style="font-size: 60%;"> `\(>\)` **.10** poor fit</span> <br> > <span style="font-size: 60%;"> **.08 - .10** mediocre fit</span> <br> > <span style="font-size: 60%;"> **.05 - .08** acceptable fit</span> <br> > <span style="font-size: 60%;"> **.01 - .05** close fit</span> <br> > <span style="font-size: 60%;"> **.00** exact fit</span> ] --- class: middle, left <img class="rectangle" src="images/modelfitlineCFI.png" width="700px"/> .pull-left[ ## <span style="font-size: 80%;">Relative Model Fit: </span> <span style="font-size: 70%;">*How far from worst*: </span> <br> <span style="font-size: 70%;"> **TLI (NNFI)**, **CFI**... </span> ] .pull-right[ > <span style="font-size: 60%;"> `\(<\)` **.85** poor fit</span> <br> > <span style="font-size: 60%;"> **.85-.90** mediocre fit</span> <br> > <span style="font-size: 60%;"> **.90-.95** acceptable fit</span> <br> > <span style="font-size: 60%;"> **.95-.99** close fit</span> <br> > <span style="font-size: 60%;"> **1.00** exact fit</span> ] <span style="font-size: 50%;">Also: Modification indices, Fitted residual matrix, Parameter estimates… </span> --- class: middle, left .pull-left[ <img class="rectangle" src="images/modelfit.png" width="800px"/> ] .pull-right[ <span style="font-size: 40%;">Chi-Square = -2[(-1365.848) - (-1351.359)] = <span style="color:#4CAF50;">**28.978**</span><br> DF = `\(\frac{v(v+1)}{2}-p\)` = `\(\frac{6(6+1)}{2}-13\)` = <span style="color:#4CAF50;">**8** </span></span> <br> <span style="font-size: 40%;">RMSEA = `\(\sqrt{\frac{\frac{\chi^2_T - df_T}{N}}{df_T}}\)` = `\(\sqrt{\frac{\frac{28.978 - 8}{379}}{8}}\)` = <span style="color:#f44336;">**0.083**</span><br></span> <br> <span style="font-size: 40%;">CFI = `\(\frac{(\chi^2_0 - df_0)-(\chi^2_T - df_T)}{(\chi^2_0 - df_0)}\)`<br> = `\(\frac{(1939.234 - 15)-(28.978 - 8)}{(1939.234 - 15)}\)` = <span style="color:#2196F3;">**0.989**</span><br></span> <br> <span style="font-size: 40%;">TLI = `\(\frac{(\frac{\chi^2_0} {df_0})-(\frac{\chi^2_T} {df_T})}{(\frac{\chi^2_0} {df_0})-1}\)` = `\(\frac{(\frac{1939.234} {15})-(\frac{28.978} {8})}{(\frac{1939.234} {15})-1}\)` = <span style="color:#FF9800;">**0.980**</span><br></span> ] --- name: software class: inverse, center, middle # How do we estimate a model?<br> ## <span style="color:#FFCC66;">Statistical software (Mplus, R, SAS).</span> --- name: mplus class: middle, left <center><span style="font-size: 120%;"> Sample CFA Mplus Code </span></center> <br> .pull-left[ <span style="font-size: 60%;"> <span style="color:#0004FF;">DATA:</span> FILE = mydata.dat;</span> <span style="font-size: 60%;"> <span style="color:#0004FF;">VARIABLE:</span> NAMES = SUP1 SUP2 SUP3;<br> </span> <span style="font-size: 60%;"> <span style="color:#0004FF;">MODEL:</span> SUP by SUP1\* <br> SUP2<br> SUP3;<br> SUP@1; </span> <span style="font-size: 60%;"> <span style="color:#0004FF;">OUTPUT:</span> TECH1;</span> ] .pull-right[ <img class="rectangle" src="images/sup1.png" width="800px"/> ] --- class: middle, left <center><span style="font-size: 120%;"> Sample CFA Mplus Estimates </span></center> <br> <img class="rectangle" src="images/mplusresult.png" width="800px"/> --- class: middle, left <center><span style="font-size: 120%;"> Sample CFA Mplus Estimates </span></center> <br> .pull-left[ <span style="font-size: 60%;">MODEL RESULTS</span><br> <span style="font-size: 80%;"><table class="table" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;"> </th> <th style="text-align:left;"> Estimate </th> <th style="text-align:left;"> S.E. </th> <th style="text-align:left;"> Est./S.E. </th> <th style="text-align:left;"> P-Value </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;"> SUP BY </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> </tr> <tr> <td style="text-align:left;"> SUP1 </td> <td style="text-align:left;"> 2.202 </td> <td style="text-align:left;"> 0.155 </td> <td style="text-align:left;"> 14.246 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> SUP2 </td> <td style="text-align:left;"> 2.226 </td> <td style="text-align:left;"> 0.150 </td> <td style="text-align:left;"> 14.879 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> SUP3 </td> <td style="text-align:left;"> 1.966 </td> <td style="text-align:left;"> 0.164 </td> <td style="text-align:left;"> 11.990 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> Intercepts </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> </tr> <tr> <td style="text-align:left;"> SUP1 </td> <td style="text-align:left;"> 3.287 </td> <td style="text-align:left;"> 0.199 </td> <td style="text-align:left;"> 16.522 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> SUP2 </td> <td style="text-align:left;"> 2.990 </td> <td style="text-align:left;"> 0.196 </td> <td style="text-align:left;"> 15.239 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> SUP3 </td> <td style="text-align:left;"> 3.322 </td> <td style="text-align:left;"> 0.198 </td> <td style="text-align:left;"> 16.739 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> Variances </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> </tr> <tr> <td style="text-align:left;"> SUP </td> <td style="text-align:left;"> 1.000 </td> <td style="text-align:left;"> 0.000 </td> <td style="text-align:left;"> 999.000 </td> <td style="text-align:left;"> 999.000 </td> </tr> <tr> <td style="text-align:left;"> Resid Var </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> </tr> <tr> <td style="text-align:left;"> SUP1 </td> <td style="text-align:left;"> 0.812 </td> <td style="text-align:left;"> 0.183 </td> <td style="text-align:left;"> 4.429 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> SUP2 </td> <td style="text-align:left;"> 0.543 </td> <td style="text-align:left;"> 0.171 </td> <td style="text-align:left;"> 3.176 </td> <td style="text-align:left;"> 0.001 </td> </tr> <tr> <td style="text-align:left;"> SUP3 </td> <td style="text-align:left;"> 1.768 </td> <td style="text-align:left;"> 0.243 </td> <td style="text-align:left;"> 7.265 </td> <td style="text-align:left;"> 0.000 </td> </tr> </tbody> </table> </span> ] .pull-right[ <img class="rectangle" src="images/sup2.png" width="800px"/> ] --- class: middle, left .pull-left[ <span style="font-size: 60%;">STDYX Standardization</span><br> <span style="font-size: 80%;"><table class="table" style="font-size: 16px; margin-left: auto; margin-right: auto;"> <thead> <tr> <th style="text-align:left;"> </th> <th style="text-align:left;"> Estimate </th> <th style="text-align:left;"> S.E. </th> <th style="text-align:left;"> Est./S.E. </th> <th style="text-align:left;"> P-Value </th> </tr> </thead> <tbody> <tr> <td style="text-align:left;"> SUP BY </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> </tr> <tr> <td style="text-align:left;"> SUP1 </td> <td style="text-align:left;"> 0.925 </td> <td style="text-align:left;"> 0.019 </td> <td style="text-align:left;"> 48.366 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> SUP2 </td> <td style="text-align:left;"> 0.949 </td> <td style="text-align:left;"> 0.017 </td> <td style="text-align:left;"> 54.928 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> SUP3 </td> <td style="text-align:left;"> 0.828 </td> <td style="text-align:left;"> 0.029 </td> <td style="text-align:left;"> 28.129 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> Intercepts </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> </tr> <tr> <td style="text-align:left;"> SUP1 </td> <td style="text-align:left;"> 1.382 </td> <td style="text-align:left;"> 0.117 </td> <td style="text-align:left;"> 11.818 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> SUP2 </td> <td style="text-align:left;"> 1.275 </td> <td style="text-align:left;"> 0.113 </td> <td style="text-align:left;"> 11.318 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> SUP3 </td> <td style="text-align:left;"> 1.400 </td> <td style="text-align:left;"> 0.118 </td> <td style="text-align:left;"> 11.897 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> Variances </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> </tr> <tr> <td style="text-align:left;"> SUP </td> <td style="text-align:left;"> 1.000 </td> <td style="text-align:left;"> 0.000 </td> <td style="text-align:left;"> 999.000 </td> <td style="text-align:left;"> 999.000 </td> </tr> <tr> <td style="text-align:left;"> Resid Var </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> <td style="text-align:left;"> </td> </tr> <tr> <td style="text-align:left;"> SUP1 </td> <td style="text-align:left;"> 0.143 </td> <td style="text-align:left;"> 0.035 </td> <td style="text-align:left;"> 4.050 </td> <td style="text-align:left;"> 0.000 </td> </tr> <tr> <td style="text-align:left;"> SUP2 </td> <td style="text-align:left;"> 0.099 </td> <td style="text-align:left;"> 0.033 </td> <td style="text-align:left;"> 3.011 </td> <td style="text-align:left;"> 0.003 </td> </tr> <tr> <td style="text-align:left;"> SUP3 </td> <td style="text-align:left;"> 0.314 </td> <td style="text-align:left;"> 0.049 </td> <td style="text-align:left;"> 6.435 </td> <td style="text-align:left;"> 0.000 </td> </tr> </tbody> </table> </span> ] .pull-right[ <img class="rectangle" src="images/sup3.png" width="800px"/> ] <span style="font-size: 60%;">Perceived Social Support (latent SUP) accounts for **85.6%**</span> <span style="font-size: 45%;"> `\((0.925^2 = 0.856)\)` </span> <span style="font-size: 60%;">of the variance in the indicator SUP1. Also, 0.856 + 0.143 = 1.0</span> --- name: r class: middle, left <center><span style="font-size: 120%;"> Sample CFA R (Lavaan) Code </span></center> <br> .pull-left[ <span style="font-size: 55%;"><span style="color:#0004FF;">library</span>(lavaan)<br> m1 ← '<br> SUP =~ NA\*SUP1 + SUP2 + SUP3<br> SUP ~~ 1*SUP<br> '<br> fit1 ← cfa(m1, data=mydata, std.lv=<span style="color:#0004FF;">T</span>)<br> summary(fit1, standardized=<span style="color:#0004FF;">T</span>, fit.measures=<span style="color:#0004FF;">T</span>, rsquare=<span style="color:#0004FF;">T</span>)</span> ] .pull-right[ <img class="rectangle" src="images/sup1.png" width="800px"/> ] --- class: center, middle <center><span style="font-size: 120%;"> Sample CFA R (Lavaan) Estimates </span></center> <br> <img class="rectangle" src="images/laavanresult.png" width="800px"/> --- name: sas class: middle, left <center><span style="font-size: 120%;"> Sample CFA SAS (Proc Calis) Code </span></center> <br> .pull-left[ <span style="font-size: 60%;"><span style="color:#0004FF;">proc calis</span> <span style="color:#0004FF;">data</span>=mydata method=ml;<br> <span style="color:#0004FF;">path</span> SUP → SUP1 SUP2 SUP3 = ly1 - ly3;<br> <span style="color:#0004FF;">pvar</span> SUP = 1,<br> SUP1 SUP2 SUP3 = te1 - te3;<br> <span style="color:#0004FF;">run;</span> </span> ] .pull-right[ <img class="rectangle" src="images/sup1.png" width="800px"/> ] --- class: center, middle <center><span style="font-size: 120%;"> Sample CFA SAS (Proc Calis) Estimates </span></center> <br> .pull-left[ <img class="rectangle" src="images/calisresult1.png" width="400px"/> ] .pull-right[ <img class="rectangle" src="images/calisresult2.png" width="400px"/> ] --- name: sem class: inverse, center, middle # Advantages of CFA?<br> ## <span style="color:#FFCC66;">observed vs. latent correlations.</span> --- class: center, middle <img class="rectangle" src="images/CFAcorr2.png" width="800px"/> --- class: middle, center <img class="rectangle" src="images/CFAcorrEST.png" width="600px"/> <img class="rectangle" src="images/corrEST.png" width="450px"/> <span style="font-size: 45%;">CFA reveals subtle relationships between constructs that may be obscured by scale scores.</span> --- class: center, middle <img class="rectangle" src="images/scales1.png" width="400px"/> <img class="rectangle" src="images/scalesCFA1.png" width="400px"/> --- class: center, middle <img class="rectangle" src="images/scalescorr1.png" width="300px"/> <img class="rectangle" src="images/scalesCFAcorr1.png" width="450px"/> <span style="font-size: 50%;">Disattenuated correlation (controlling for measurement error and specific variance)</span> --- class: inverse, center, middle # How about latent regression?<br> ## <span style="color:#FFCC66;">Structural Equation Modeling.</span> --- class: middle, center <img class="rectangle" src="images/sem.png" width="800px"/> <span style="font-size: 45%;">CFA reveals subtle relationships between constructs that may be obscured by scale scores.</span> --- class: center, middle <span style="font-size: 120%;"> Latent vs. Manifest/Observed </span> <br> <br> .pull-left[ <img class="rectangle" src="images/regression_demo.png" width="400px"/> ] .pull-right[ <img class="rectangle" src="images/SEMest.png" width="400px"/> ] <span style="font-size: 48%;">Measurement error in the observed variables can reduce the accuracy of the regression model.</span><br> <span style="font-size: 45%;"> Model Fit: χ2(24, n=144) = 36.14; RMSEA = .059(.000;.097) ; CFI = .980; TLI/NNFI = .970</span> <br> --- class: inverse, center, middle # Does the relationship between X and Y depend on Z?<br> ## <span style="color:#FFCC66;">Moderation.</span> --- name: sas class: middle, left .pull-left[ <img class="rectangle" src="images/modmplus.png" width="500px"/> ] .pull-right[ <img class="rectangle" src="images/moderation.png" width="500px"/> ] <span style="font-size: 50%;">Mplus code using the Latent Moderated Structural Equations (LMS) Method.</span> --- class: center, middle .pull-left[ <center><medium> Regular Moderation </medium></center> <img class="rectangle" src="images/moderation_manifest.png" width="250px"/> <span style="font-size: 48%;"> `\(R^2 = 0.11\)` </span> ] .pull-right[ <center><medium> Latent Moderation </medium></center> <img class="rectangle" src="images/moderation__latent.png" width="700px"/> <span style="font-size: 48%;"> `\(R^2 = 0.46\)` </span> ] <span style="font-size: 50%"> **Model differences**: In *regular moderation*, measurement error can inflate predictive effects (i.e., making them seem larger). *Latent moderation* provides more accurate estimates.</span> --- class: inverse, center, middle # Does the effect of X on Y operate through M?<br> ## <span style="color:#FFCC66;">Mediation.</span> --- class: middle, left .pull-left[ <img class="rectangle" src="images/medmplus.png" width="800px"/> ] .pull-right[ <center><medium> Latent Mediation </medium></center> <img class="rectangle" src="images/latentmediation.png" width="800px"/> ] --- class: inverse, center, middle # Do I have enough power for this?<br> ## <span style="color:#FFCC66;">SEM Power Analysis.</span> --- name: power class: middle, center <span style="font-size: 80%;"> Parameter Power </span> <br> <br> .pull-left[ <img class="rectangle" src="images/montecarlo.png" width="300px"/> ] .pull-right[ <img class="rectangle" src="images/montecarlo3.png" width="800px"/> ] <span style="font-size: 60%;"> 80% power for a correlation of at least -0.30 given *N* = 150. </span> --- name: class: middle, center <span style="font-size: 80%;"> Model Power </span> <br> <br> .pull-left[ <img class="rectangle" src="images/rmseapower.png" width="300px"/> ] .pull-right[ <img class="rectangle" src="images/rmseapower2.png" width="800px"/> ] <span style="font-size: 60%;"> 80% power for a CFA with at least 60 df given *N* = 85. </span> --- class: inverse, center, middle #Thanks! <br> ## Any further questions? ## <span style="color:#FFCC66;">Feel free to join the coding session.</span> ---