# How to apply structural equation model (SEM) to set up the SNP pleiotropic effect

Some researchers will use SEM model to detect pleiotropic effect and causal effect. In my opinion, SEM model can not be considered as the proof for effects, instead, the SEM model only provides the information: "There are the potential causal effects between these variables".

But still, SEM is a good tool to show the network among the variables we interested. Recently, I tried to set up the SEM model which contained causal effect and pleiotropic effect at the same time, but I kept getting error from this model: When I added the covariance between $$e_{1}$$ and $$e_{2}$$, the SEM model couldn't be identified. However, if I removed the covariance, SEM model could be identified, and no error occured.

I am not quite sure why this happened, and which setting is correct. Do I need to add the covariance between $$e_{1}$$ and $$e_{2}$$, or remove it?

Update:

Hi @Jeremy Miles, thank you for your response. "Pleiotropic effect" is just a biology terms, when we talked about single nucleotide polymorphisms (SNPs), genes, and traits. Here I give you short description, we want to estimate the causal effect of exposure (e.g. High density lipoprotein) on outcome (e.g. triglycerides ), and we know some SNPs will affect exposure (We can use GWAS to find these SNPs). However, some SNPs we find may directly affect outcome, and the effect of SNPs on outcome is called "pleiotropic effect".

There is one paper about using SEM model to detect pleiotropic effect:

(1) Direct and indirect genetic effects on triglycerides through omics and correlated phenotypes

I understand when we ran out df, model wouldn't be identified. However, I always have more than one SNPs, and I think the model df is larger than 0.

For example, if we have 5 SNPs

1. Total df: 32 (5!)
2. regression path: 5(snps to exposure) + 5 (snps to outcome) + 1 (exposure to outcome)
3. variance $$e_{1}$$: 1
4. variance $$e_{2}$$: 1
5. covariance $$e_{1}$$ and $$e_{2}$$ : 1

model df: 32-5-5-1-1-1-1 = 18

Furthermore, I get the error message like:

Warning message:

In lav_model_vcov(lavmodel = lavmodel, lavsamplestats = lavsamplestats,  :
lavaan WARNING:
Could not compute standard errors! The information matrix could
not be inverted. This may be a symptom that the model is not
identified.


I don't know what a pleiotropic effect is, but I can tell you a little about identification in SEM.

With three variables, you have six moments - three variances and three covariances as your data.

The df of the model are equal to the number of moments minus the number of parameters. This value must be zero for the model to be just identified, or greater than zero to be over identified.

Your model (without the $$e_1$$, $$e_2$$ covariance, has three variances, and three regression paths. That's six parameters. It has zero df, and is just identified.

Stick in an additional covariance, and it will have -1 df and won't be identified. That (in the way you have stated it) cannot be correct.

I spent a couple of minutes looking for an example of a pleiotropic effect in a model similar to yours, but I didn't find one. Can you point me to one?

Edit: The model isn't identified because you have a regression from exposure to outcome and a covariance. You can't estimate both of these.

• Hi, @Jeremy Miles. Thank you for your response. Since I cannot type too much words in the comment, so I UPDATE my question and also post my comment. Dec 22, 2020 at 7:32
• I get a lot more than 5 df when I calculate it (115 df?). What are e1 and e2? Your model seems to be missing some covariances as well, e.g. TG Visit 1 and TG visit 3. Dec 22, 2020 at 17:39
• "I get a lot more than 5 df when I calculate it (115 df?)." Sorry, I am not quite sure which model you calculate. Do you mean the SEM model (Figure1 Diagram illustrating the full SEM model) from the paper , or the model (5 SNPs) I used to make a example (I just update the figure of this model)? Dec 23, 2020 at 6:19
• Ah, sorry, I did the wrong one. Dec 23, 2020 at 17:29
• Hmm... but I am not quite sure why I cannot estimate this covariance? Can you describe it more detail? Dec 24, 2020 at 23:56