par5 = 'ATTLES connected'
par4 = '1'
par3 = 'bachelor'
par2 = 'male'
par1 = '2'
par5 <- 'ATTLES connected'
par4 <- '1'
par3 <- 'bachelor'
par2 <- 'male'
par1 <- '2'
#'GNU S' R Code compiled by R2WASP v. 1.2.291 ()
#Author: root
#To cite this work: Wessa P., 2012, Factor Analysis for Information Management 2 (v1.0.7) in Free Statistics Software (v$_version), Office for Research Development and Education, URL http://www.wessa.net/rwasp_factor_analysis.wasp/
#Source of accompanying publication: 
#
library(psych)
x <- as.data.frame(read.table(file='http://www.wessa.net/download/utaut.csv',sep=',',header=T))
x$U25 <- 6-x$U25
if(par2 == 'female') x <- x[x$Gender==0,]
if(par2 == 'male') x <- x[x$Gender==1,]
if(par3 == 'prep') x <- x[x$Pop==1,]
if(par3 == 'bachelor') x <- x[x$Pop==0,]
if(par4 != 'all') {
x <- x[x$Year==as.numeric(par4),]
}
cAc <- with(x,cbind( A1, A2, A3, A4, A5, A6, A7, A8, A9,A10))
cAs <- with(x,cbind(A11,A12,A13,A14,A15,A16,A17,A18,A19,A20))
cA <- cbind(cAc,cAs)
cCa <- with(x,cbind(C1,C3,C5,C7, C9,C11,C13,C15,C17,C19,C21,C23,C25,C27,C29,C31,C33,C35,C37,C39,C41,C43,C45,C47))
cCp <- with(x,cbind(C2,C4,C6,C8,C10,C12,C14,C16,C18,C20,C22,C24,C26,C28,C30,C32,C34,C36,C38,C40,C42,C44,C46,C48))
cC <- cbind(cCa,cCp)
cU <- with(x,cbind(U1,U2,U3,U4,U5,U6,U7,U8,U9,U10,U11,U12,U13,U14,U15,U16,U17,U18,U19,U20,U21,U22,U23,U24,U25,U26,U27,U28,U29,U30,U31,U32,U33))
cE <- with(x,cbind(BC,NNZFG,MRT,AFL,LPM,LPC,W,WPA))
cX <- with(x,cbind(X1,X2,X3,X4,X5,X6,X7,X8,X9,X10,X11,X12,X13,X14,X15,X16,X17,X18))
if (par5=='ATTLES connected') x <- cAc
if (par5=='ATTLES separate') x <- cAs
if (par5=='ATTLES all') x <- cA
if (par5=='COLLES actuals') x <- cCa
if (par5=='COLLES preferred') x <- cCp
if (par5=='COLLES all') x <- cC
if (par5=='CSUQ') x <- cU
if (par5=='Learning Activities') x <- cE
if (par5=='Exam Items') x <- cX
ncol <- length(x[1,])
for (jjj in 1:ncol) {
x <- x[!is.na(x[,jjj]),]
}
par1 <- as.numeric(par1)
nrows <- length(x[,1])
rownames(x) <- 1:nrows
y <- x
fit <- principal(y, nfactors=par1, rotate='varimax')
fit
fs <- factor.scores(y,fit)
fs
postscript(file="/var/www/rcomp/tmp/1s7v01335882467.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) 
fa.diagram(fit)
dev.off()
postscript(file="/var/www/rcomp/tmp/206dn1335882467.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) 
plot(fs,pch=20)
text(fs,labels=rownames(y),pos=3)
dev.off()

#Note: the /var/www/rcomp/createtable file can be downloaded at http://www.wessa.net/cretab
load(file="/var/www/rcomp/createtable")

a<-table.start()
a<-table.row.start(a)
a<-table.element(a,'Rotated Factor Loadings',par1+1,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'Variables',1,TRUE)
for (i in 1:par1) {
a<-table.element(a,paste('Factor',i,sep=''),1,TRUE)
}
a<-table.row.end(a)
for (j in 1:length(fit$loadings[,1])) {
a<-table.row.start(a)
a<-table.element(a,rownames(fit$loadings)[j],header=TRUE)
for (i in 1:par1) {
a<-table.element(a,round(fit$loadings[j,i],3))
}
a<-table.row.end(a)
}
a<-table.end(a)
table.save(a,file="/var/www/rcomp/tmp/37pon1335882467.tab") 

try(system("convert tmp/1s7v01335882467.ps tmp/1s7v01335882467.png",intern=TRUE))
try(system("convert tmp/206dn1335882467.ps tmp/206dn1335882467.png",intern=TRUE))

