General SEM Discussions
http://openmx.psyc.virginia.edu/taxonomy/term/17/0
enLatent Variable Indicators
http://openmx.psyc.virginia.edu/thread/3875
<p>Can an indicator for a latent variable be used elsewhere in the structural part of a structural equations model as an independent variable? I think the answer is no, as I've not seen it done, but would like to check.</p>
<p>Thanks for any help</p>
http://openmx.psyc.virginia.edu/thread/3875#commentsGeneral SEM DiscussionsTue, 19 Aug 2014 15:15:58 +0000moman8223875 at http://openmx.psyc.virginia.eduProblems with convergence when parameters are fixed and question about BIC
http://openmx.psyc.virginia.edu/thread/3871
<p>Good day,</p>
<p>I am having some trouble with posting due to the spam filter being continuously triggered so I also provided an attachment for the R code in addition to the data set.</p>
<p>I have two different questions.<br />
My questions revolve around multiple group factor analysis (3 groups). There are a lot more groups but for the sake of the questions and computation speed, I provided the code for three groups.<br />
Thank you for your suggestions and comments.</p>
<p>1. Fixing of model parameters: I fixed all the parameters in a one factor model. The code works for one group (model1) but when three groups are put into one entire run of code (mgroups), I get the warning: "Error: The job for model 'new' exited abnormally with the error message: Objective function returned a value of NaN at iteration 0.1." How could I circumvent this issue to let the code work for the three groups in one run?</p>
<p>2. Total of BIC from one entire code run unequal with the sum of BIC from individual models<br />
I would like to compute the information criteria using three groups in one whole code. I specified the code for three groups in one run (newmodel) and the code for three separate groups (m1,m2,m3). I further specified the code below to compute the information criteria. The thing is, the sum of the AIC's from three separate model is exactly equal with the AIC computed from one entire code run (newmodel) but it is not the case for the BIC's. They do not correspond at all. Is the BIC computed differently when multiple groups are specified in one code or is it just ordinary to find that the sum of the BIC's from separate groups does not equal the BIC when the three groups are combined in one code?</p>
<table id="attachments" class="sticky-enabled">
<thead><tr><th>Attachment</th><th>Size</th> </tr></thead>
<tbody>
<tr class="odd"><td><a href="http://openmx.psyc.virginia.edu/sites/default/files/codemx.txt">codemx.txt</a></td><td>9.03 KB</td> </tr>
<tr class="even"><td><a href="http://openmx.psyc.virginia.edu/sites/default/files/dataset_1.txt">dataset.txt</a></td><td>11.71 KB</td> </tr>
</tbody>
</table>
http://openmx.psyc.virginia.edu/thread/3871#commentsGeneral SEM DiscussionsThu, 14 Aug 2014 02:31:56 +0000metavid3871 at http://openmx.psyc.virginia.eduAutomatically computing residual variances for a specified RAM matrix
http://openmx.psyc.virginia.edu/thread/3866
<p>It seems I'm frequently wanting to compute an implied correlation matrix given a SE model. I began writing a function to do just that:</p>
<p>#### create a RAM model for testing<br />
RAM = data.frame(matrix(c(<br />
"F1", "A1", 1, .4,<br />
"F1", "A2", 1, .4,<br />
"F1", "A3", 1, .4,<br />
"F2", "A4", 1, .4,<br />
"F2", "A5", 1, .4,<br />
"F2", "A6", 1, .4,<br />
"F3", "A7", 1, .4,<br />
"F3", "A8", 1, .4,<br />
"F3", "A9", 1, .4,<br />
"A10", "A9", 2, .5), ncol=4, byrow=T<br />
))<br />
names(RAM) = c("From", "To", "Arrows", "Values")</p>
<p>####<br />
observed = c("A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10")</p>
<p>### begin function (currently omitted until done testing)<br />
#ram.2.cor = function(RAM, observed){</p>
<p> all.vars = as.character(unique(unlist(c(RAM[,1:2]))))<br />
unobserved = as.character(all.vars[which(!(all.vars%in%observed))])</p>
<p> #### create asymmetric matrix<br />
mA = data.frame(matrix(0,nrow=length(all.vars), ncol=length(all.vars)), row.names=c(observed, unobserved))<br />
names(mA) = c(observed, unobserved)<br />
for (j in 1:nrow(RAM)){<br />
col = which(names(mA) == RAM$From[j] & RAM$Arrows[j] == 1)<br />
rw = which(names(mA) == RAM$To[j] & RAM$Arrows[j] == 1)<br />
mA[rw, col] = as.numeric(RAM$Values[j])<br />
}</p>
<p> ##### create symmetric matrix (temporarily fill in endogenous variances)<br />
end = names(mA)[which(rowSums(mA)>0)]<br />
mS = data.frame(diag(length(all.vars)), row.names=c(observed, unobserved))<br />
names(mS) = row.names(mS)<br />
for (i in 1:nrow(RAM)){<br />
if (RAM$Arrows[i] == 2){<br />
col = which(names(mA) == RAM$To[i])<br />
row = which(names(mA) == RAM$From[i])<br />
mS[col,row] = as.numeric(as.character(RAM$Values[i]))<br />
mS[row,col] = as.numeric(as.character(RAM$Values[i]))<br />
}<br />
}<br />
#### I'M STUCK!</p>
<p>The code above produces the asymmetrical matrix and is almost there for the symmetric matrix. However, all the variances are set to one. I want all variables to have a total variance of one, which means that the endogenous variables will have a value < 1. In the past, I've just used covariance algebra to compute them, but this becomes unrealistic for large models and cannot be put into a function. </p>
<p>So....can you all think of any general equation that will tell me what value for the residual variance will give each variable a total variance of one? I was considering using optim to solve it through brute force, but I figured there had to be a more elegant way of doing it. </p>
<p>Thanks!</p>
<p>P.S....sorry if this is totally obvious. I reserve the right to overlook a very simple answer.<br />
}</p>
http://openmx.psyc.virginia.edu/thread/3866#commentsGeneral SEM DiscussionsTue, 05 Aug 2014 17:30:56 +0000fife3866 at http://openmx.psyc.virginia.eduLatent Variable Usage
http://openmx.psyc.virginia.edu/thread/3863
<p>Hello,</p>
<p>Does the scale of a latent variable matter in interpreting results? For instance, I am trying to make a latent variable for cost, but none of my observed variables are in dollars (or any monetary value). If the first indicator loading is fixed to 1, but that is measuring # of cars, how would that affect the other indicators, which are measurements of completely different things (but things that would affect this idea of cost)?</p>
<p>Thanks for any help</p>
http://openmx.psyc.virginia.edu/thread/3863#commentsGeneral SEM DiscussionsFri, 01 Aug 2014 21:06:59 +0000moman8223863 at http://openmx.psyc.virginia.eduPrevent Calculation of Auxiliary Variable Descriptive Statistics
http://openmx.psyc.virginia.edu/thread/3127
<p>Hi All,</p>
<p>I am using OpenMx in conjunction with SEM Trees. As a result of this, I have to include the whole dataset (30,000 x 1200). Right now, it takes about 30 seconds to run the current code:</p>
<p>hpc20 <- mxModel("1 Variable",type="RAM",<br />
mxData(observed=pt_run1,type="raw"),<br />
manifestVars="A_AbsRea",<br />
mxPath(<br />
from= "A_AbsRea" ,<br />
arrows=2,free=T,values=9,labels= "e1"),<br />
mxPath(<br />
from="one",<br />
to="A_AbsRea",<br />
arrows=1,free= T,values= 8,labels = "mean1")) </p>
<p>system.time(hpc20Fit <- mxRun(hpc20,suppressWarnings=T,silent=T))<br />
user system elapsed<br />
30.723 2.092 32.806 </p>
<p>I am trying to figure out a way to speed this up. Because the computation takes so long in using SEM Trees with such a large dataset, we are starting with the simplest possible model. I suspect the model takes so long to run because of the computation of the descriptives for all of the other variables. When the dataset is changed to just include the one variable, it takes a split second. </p>
<p>I have tried to change this option thus far:</p>
<p>hpc20 <- mxOption(hpc20,'No Sort Data',"A_AbsRea")</p>
<p>although it doesn't off change the computation time. Is there a different way to have OpenMx only calculate values for the 1 variable of interest? Sorry if I am not clear or am missing something quite obvious.</p>
<p>Thanks<br />
Ross</p>
http://openmx.psyc.virginia.edu/thread/3127#commentsGeneral SEM DiscussionsTue, 27 May 2014 20:35:14 +0000jacobucc3127 at http://openmx.psyc.virginia.eduhow to make fit model?
http://openmx.psyc.virginia.edu/thread/2966
<p>hallo,<br />
I want to ask about optimalization my SEM model. i confused how to set a starting value for each variable? i send my code but in result, i get still NaN in the standar estimation.<br />
in my result, RMSEA still more than 0.08 and the CFI still less than 0.9. so, what should i do?</p>
<table id="attachments" class="sticky-enabled">
<thead><tr><th>Attachment</th><th>Size</th> </tr></thead>
<tbody>
<tr class="odd"><td><a href="http://openmx.psyc.virginia.edu/sites/default/files/OUTPUT_0.txt">OUTPUT.txt</a></td><td>9.76 KB</td> </tr>
<tr class="even"><td><a href="http://openmx.psyc.virginia.edu/sites/default/files/kodingan data Yogya Bali (DataFilter)1.txt">kodingan data Yogya Bali (DataFilter)1.txt</a></td><td>4.39 KB</td> </tr>
</tbody>
</table>
http://openmx.psyc.virginia.edu/thread/2966#commentsGeneral SEM DiscussionsWed, 30 Apr 2014 08:02:10 +0000siti nur azizah2966 at http://openmx.psyc.virginia.eduPower calculation
http://openmx.psyc.virginia.edu/thread/2959
<p>Hi.<br />
We are planning to do some moderation model analysis on the new data (which we do not have yet) and need to do power analysis before. Is there any script written for OpenMx how to do it? I found some scripts for calssical Mx, but I am not sure I am able to adjust it to moderation models and even if, the output seems to be not compatible with 64-bit Windows.<br />
I would appreciate any help for simulating data driven by such models and for calculating the power.<br />
Thank you beforehand!<br />
Julia</p>
http://openmx.psyc.virginia.edu/thread/2959#commentsGeneral SEM DiscussionsTue, 29 Apr 2014 09:20:03 +0000Julia2959 at http://openmx.psyc.virginia.eduSEM for prediction
http://openmx.psyc.virginia.edu/thread/2750
<p>Hello -</p>
<p>I wanted to check with the community if anyone has experience in using SEM for predictive modeling. If yes, how does one approach it. Thanks in advance for your help!</p>
http://openmx.psyc.virginia.edu/thread/2750#commentsGeneral SEM DiscussionsMon, 31 Mar 2014 04:07:41 +0000LearnSEM82750 at http://openmx.psyc.virginia.eduSet starting values
http://openmx.psyc.virginia.edu/thread/2712
<p>I want to ask what exactly the purpose of setting the starting value in mxPath codes? And what the basic can we use to set it? Is it like trial and error? I set some values but it always generate the NaN value in standard error, so what should I do then? Thank you.</p>
http://openmx.psyc.virginia.edu/thread/2712#commentsGeneral SEM DiscussionsTue, 25 Mar 2014 11:47:50 +0000icha2712 at http://openmx.psyc.virginia.eduFIML Estimation
http://openmx.psyc.virginia.edu/thread/2705
<p>I want to ask you.<br />
actually, I have a problem with my data. My new data is incomplete (missing data). I read on the web if no data is lost then using FIML function, but I am confused what to put where and what. I have tried but I always fail. please help me.<br />
other than that, is there any basis we determine the value? I tried to try to change the value of 0.25-1 and outcome affect the output Standard error of estimate.<br />
thank you.</p>
<table id="attachments" class="sticky-enabled">
<thead><tr><th>Attachment</th><th>Size</th> </tr></thead>
<tbody>
<tr class="odd"><td><a href="http://openmx.psyc.virginia.edu/sites/default/files/kodingan DATA BARU YogyaPabar.txt">kodingan DATA BARU YogyaPabar.txt</a></td><td>4.8 KB</td> </tr>
</tbody>
</table>
http://openmx.psyc.virginia.edu/thread/2705#commentsGeneral SEM DiscussionsTue, 25 Mar 2014 05:23:22 +0000siti nur azizah2705 at http://openmx.psyc.virginia.eduGrowth curve model with ordinal data!
http://openmx.psyc.virginia.edu/thread/2672
<p>Hi,<br />
I have 50 binary variables with values of either 0 or 1. I tried to treat these variables as ordinal and fit a growth curve model.<br />
OpenMx gave wrong message:</p>
<p>Running Linear Growth Curve Model<br />
Error: The data object 'Linear Growth Curve Model.data' contains 50 ordered factors but our ordinal integration implementation has a limit of 20 ordered factors.</p>
<p>Is that true that I only can fit 20 ordered factors using OpenMx? Could you point me a direction how to fix this problem? Any help or suggestions will be appreciated. Thanks!</p>
http://openmx.psyc.virginia.edu/thread/2672#commentsGeneral SEM DiscussionsFri, 14 Mar 2014 13:55:47 +0000Sunny Wu2672 at http://openmx.psyc.virginia.eduWhat's the relationship between a 【latent variable】and its 【indicator(s)】
http://openmx.psyc.virginia.edu/thread/2657
<p>Hi, everyone! I am a rookie of SEM.<br />
To use SEM, I have read some textbooks about it. And there are something I cannot quite sure about.</p>
<p>It is usual that a latent variable has several indicators, let's say three as an example.<br />
[indicator1] <-- (latent variable)<br />
[indicator2] <--<br />
[indicator3] <--</p>
<p>the path diagram above can be represented by equations as follow:</p>
<p>indicator1 = a1 * latent variable + error1 ... (*)<br />
indicator2 = a2 * latent variable + error2 ... (**)<br />
indicator3 = a3 * latent variable + error3 ... (***)</p>
<p>in which a1, a2, a3 means the regression weights of indicator1, 2, 3 respectively.</p>
<p>Using the equations above, I can easily replace latent variable in (*) using indicator2. </p>
<p>So my questions are:<br />
1、If indicator1 can be linearly represented by indicator2, does that mean there are linear relationship between these two indicators?<br />
2、If so. I always assume that indicators are items can be measure and represent partly of correspondent latent variable, so the more independent between indicators, the better they are. If they have some kind of linear relationship, that may cause some negative effect of the Model.</p>
<p>How can I understand these?</p>
<p>Since I am a new to SEM, my opinion may itself be wrong. So please tell me If so. </p>
<p>Thanks! :)</p>
http://openmx.psyc.virginia.edu/thread/2657#commentsGeneral SEM DiscussionsMon, 10 Mar 2014 15:21:01 +0000colin.Fu2657 at http://openmx.psyc.virginia.eduResidual variance correlations in path analysis
http://openmx.psyc.virginia.edu/thread/2573
<p>Suppose I have two endogenous variables (A and B) and I draw an arrow (double-headed) between them. What is openmx doing in the background? Is it fitting a correlation between the residuals of A and B?</p>
http://openmx.psyc.virginia.edu/thread/2573#commentsGeneral SEM DiscussionsMon, 13 Jan 2014 17:51:25 +0000fife2573 at http://openmx.psyc.virginia.edudefinition variable
http://openmx.psyc.virginia.edu/thread/2553
<p>What is a definition variable. How is it different from a moderator?</p>
http://openmx.psyc.virginia.edu/thread/2553#commentsGeneral SEM DiscussionsSat, 11 Jan 2014 07:57:36 +0000praveens12553 at http://openmx.psyc.virginia.eduComparing two models with "poor" fits?
http://openmx.psyc.virginia.edu/thread/2357
<p>I've been trying to determine the time ordering of events for some biomedical data. Suppose I have two variables (biomarker A and biomarker B), each measured at three timepoints (for a total of six variables). I have one model where biomarker A causes biomarker B. I write this model as follows:</p>
<p>mat = data.frame(matrix(c(<br />
"B1_1", "B1_2", 1, .2,<br />
"B1_2", "B1_3", 1, .2, #### biomarkers 1 cause themselves across time<br />
"B2_1", "B2_2", 1, .2,<br />
"B2_2", "B2_3", 1, .2, #### biomarkers 2 cause themselves across time<br />
"B1_1", "B2_2", 1, .2,<br />
"B1_2", "B2_3", 1, .2 #### biomarker 1 causes biomarker 2 across time<br />
), ncol=4, byrow=TRUE), stringsAsFactors=F)</p>
<p>paths = mxPath(from=mat[,1], to=mat[,2], arrows=as.numeric(mat[,3]), values=as.numeric(mat[,4]), labels=paste(mat[,1], "to", mat[,3], sep=""), free=T) </p>
<p>Then I write the opposite model (where biomarkers 2 cause biomarkers 1). When I fit both models, the RMSEA is quite good for one model and poor for the other model. However, when I look at the residual matrix, neither looks very good. (In particular, the correlations between B2_1, B2_2, and B2_3/B1_1, B1_2, and B1_3). </p>
<p>So here's my question: If I'm only interested in determining which causal relationship is better supported by the data, should I even care that some aspect of the correlation matrix (the ones unimportant to my substantive question) are not well modeled? Am I still safe in saying that one causal structure is more likely than the other?</p>
http://openmx.psyc.virginia.edu/thread/2357#commentsGeneral SEM DiscussionsMon, 30 Sep 2013 19:45:13 +0000fife2357 at http://openmx.psyc.virginia.edu