[R] sem by variable x

Jarrett Byrnes byrnes at msi.ucsb.edu
Tue Jul 20 19:24:02 CEST 2010


You may want to take a look at the lavaan package and use the multigroup analysis there (and see if you even need to group by country as well).

Otherwise, you could do something like

library(sem)
library(plyr)

cfa_func<-function(a.df){

	cfa<-sem(ses.model, cov(a.df[,2:7], nrow(a.df)))
	print(summary(cfa))
}
d_ply(data, "idcntry", cfa_func)

-Jarrett

On Jul 20, 2010, at 6:22 AM, Daniel Caro wrote:

> Hi R users,
> 
> I am new in R. I would like to perform confirmatory factor analysis
> for a data set of countries. My data are:
> 
> data <- read.csv("ses.raw", header = TRUE)
> attach(data)
> names(data)
> 
> [1] "idcntry" "momed"   "daded"   "dadocu"  "momocu"  "hompos"  "finan"
> 
> 
> The country id is "idcntry", my model is "ses.model", and variables to
> be included in the analysis are "momed"   "daded"   "dadocu"  "momocu"
> "hompos"  "finan" . How can I run
> 
> cfa<-sem(ses.model, cov(data[,2:7], nrow(data)))
> summary(cfa)
> 
> by country? I am able to perform sem on all data by not by country. I tried
> 
> by(data[,2:7], idcntry, function(x) sem(ses.model, cov(data[,2:7]), nrow(data)))
> 
> but the output is the same for all countries.
> 
> Thank you,
> Daniel
> 
> ______________________________________________
> R-help at 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.



More information about the R-help mailing list