Re: [R] Structural Equation Models(SEM)
Thank you Jeremy for your information. The world is changing though. We live in an increasing economic pressure. One symptom is that we are forced to use smaller samples for economy. This explains the interest for research in how the methods perform on small samples. The cited large simulation study shows GLS is more efficient for small and badly distributed samples. So perhaps it would be worth the effort to make an addition to sem(sem) Yours Ralf Finne Emeritus Novia University of Applied Science Vasa Finland >>> Jeremy Miles 12/02/09 8:22 PM >>> In the world of SEM, GLS has pretty much fallen by the wayside - I can't recall anything I've seen arguing for it's use in the past 10 years, and I also can't recall anyone using it over ML. The recommendations for non-normal distributions tend to be robust-ML, or robust weighted least squares. These are more computationally intensive, and I *think* that John Fox (author of sem) has written somewhere that it wouldn't be possible to implement them within R, without using a lower level language - or rather that it might be possible, but it would be really, really slow. However, ML and GLS are pretty similar, if you dug around in the source code, you could probably make the change (see, http://www2.gsu.edu/~mkteer/discrep.html for example, for the equations; in fact GLS is somewhat computationally simpler, as you don't need to invert the implied covariance matrix at each iteration). However, the fact that it's not hard to make the change, and that no one has made the change, is another argument that it's not a change that needs to be made. Jeremy 2009/12/2 Ralf Finne : > Hi R-colleagues. > > I have been using the sem(sem) function. It uses > maximum likelyhood as optimizing. method. > According to simulation study in Umeå Sweden > (http://www.stat.umu.se/kursweb/vt07/stad04mom3/?download=UlfHolmberg.pdf > Sorry it is in swedish, except the abstract) > maximum likelihood is OK for large samples and normal distribution > the SEM-problem should be optimized by GLS (Generalized Least Squares). > > > So to the question: > > Is there any R-function that solves SEM with GLS? > > > Ralf Finne > Novia University of Applied Science > Vasa Finland > > __ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > -- Jeremy Miles Psychology Research Methods Wiki: www.researchmethodsinpsychology.com __ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.
[R] Structural Equation Models(SEM)
Hi R-colleagues. I have been using the sem(sem) function. It uses maximum likelyhood as optimizing. method. According to simulation study in Umeå Sweden (http://www.stat.umu.se/kursweb/vt07/stad04mom3/?download=UlfHolmberg.pdf Sorry it is in swedish, except the abstract) maximum likelihood is OK for large samples and normal distribution the SEM-problem should be optimized by GLS (Generalized Least Squares). So to the question: Is there any R-function that solves SEM with GLS? Ralf Finne Novia University of Applied Science Vasa Finland __ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.
[R] Structural Equation Models(SEM)
Hi R-colleagues. In the sem-package i have a problem to introduce hidden variables. As a simple example I take an ordinary factor analysis. The program: cmat=c(0.14855886, 0.05774635, 0.08003300, 0.04900990, 0.05774635, 0.18042029, 0.11213013, 0.03752475, 0.08003300, 0.11213013, 0.24646337, 0.03609901, 0.04900990, 0.03752475, 0.03609901, 0.31702970) rn=c("R","L","I","M") cn=c("R","L","I","M") tcv=matrix(cmat,nrow=4,ncol=4,dimnames=list(rn,cn)) model.RLIM <- specify.model() R -> f1, laddR, NA L -> f1, laddL, NA I -> f1, laddI, NA M -> f1, laddM, NA R <-> R, dR,NA L <-> L, dL,NA I <-> I, dI,NA M <-> M, dM,NA f1 <-> f1, df1,NA sem.RLIM=sem(model.RLIM,tcv,101) The output: Error in dimnames(x) <- dn : length of 'dimnames' [2] not equal to array extent In addition: Warning messages: 1: In sem.default(ram = ram, S = S, N = N, param.names = pars, var.names = vars, : singular Hessian: model is probably underidentified. 2: In sem.default(ram = ram, S = S, N = N, param.names = pars, var.names = vars, : refitting without aliased parameters. I use R version 2.10.0 (2009-10-26) under Windows XP sem_0.9-19 version. Where did I make a mistake? Have anyone of you knowledge of any other package doing similar things like Confirmative Factor Analysis Ralf Finne Novia University of Applied Science Vasa Finland __ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.
[R] Expert systems
Hi R-users Is there any functions in R that can implement "expert systems"? The aim of an expert system is to produce a probable diagnosis for a patient with certain symptoms. In the classical expert system a mumber of "experts" are asked to make "statements" on the probabilities for different diseases when a combination of systems would appear. One typical "expert system" uses Fuzzy Logic to suggest the diagnosis. In more modern systems one tends to make the system self learning to improve the system. Hoping for comments Ralf Finne Swenska yrkeshögskolan Vasa Finland __ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.