Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save anonymous/4995062 to your computer and use it in GitHub Desktop.
Save anonymous/4995062 to your computer and use it in GitHub Desktop.
#Laste inn datasett
attach(arkingdata)
#Endre 0 til NA(manglende verdi)
erfaringbygg[erfaringbygg$x51==0, "x51"] <-- NA
erfaringbygg[erfaringbygg$x52==0, "x52"] <-- NA
erfaringbygg[erfaringbygg$x53==0, "x53"] <-- NA
erfaringbygg[erfaringbygg$x54==0, "x54"] <-- NA
erfaringdel[erfaringdel$x71==0, "x71"] <-- NA
erfaringdel[erfaringdel$x72==0, "x72"] <-- NA
erfaringdel[erfaringdel$x73==0, "x73"] <-- NA
erfaringdel[erfaringdel$x74==0, "x74"] <-- NA
erfaringdel[erfaringdel$x75==0, "x75"] <-- NA
intensjononske[intensjononske==0] <-- NA
intensjonplan[intensjonplan==0] <-- NA
egenkontroll[egenkontroll==0] <-- NA
intensjononske[intensjononske==0] <-- NA
intensjonplan[intensjonplan==0] <-- NA
holdningbrann[holdningbrann==0] <-- NA
holdningkostnad[holdningkostnad==0] <-- NA
holdningmekanisk[holdningkostnad==0] <-- NA
holdningmiljo[holdningmiljo==0] <-- NA
holdningprefabberegning[holdningprefabberegning==0] <-- NA
holdningrisiko[holdningrisiko==0] <-- NA
holdningtilgjengelig[holdningtilgjengelig==0] <-- NA
holdningvisuelt[holdningvisuelt==0] <-- NA
informasjonbehov[informasjonbehov==0] <-- NA
informasjonskilder[informasjonskilder==0] <-- NA
kunnskaptilegning[kunnskaptilegning==0] <-- NA
normdekker[normdekker==0] <-- NA
normfasade[normfasade==0] <-- NA
norminterior[norminterior==0] <-- NA
normkonstruksjon[normkonstruksjon==0] <-- NA
normtre[normtre==0] <-- NA
prosessdekker[prosessdekker==0] <-- NA
prosessfasade[prosessfasade==0] <-- NA
prosessinterior[prosessinterior==0] <-- NA
prosesskonstruksjon[prosesskonstruksjon==0] <-- NA
#Reversering av variabler for holdning til brann
attach(arkingdata)
arkingdata$x321r <- with(arkingdata, 8- x321)
arkingdata$x322r <- with(arkingdata, 8- x322)
arkingdata$x323r <- with(arkingdata, 8- x323)
attach(arkingdata)
#Reversering av variabler for holdning til risiko
attach(arkingdata)
arkingdata$x351r <- with(arkingdata, 8- x351)
arkingdata$x352r <- with(arkingdata, 8- x352)
arkingdata$x353r <- with(arkingdata, 8- x353)
arkingdata$x354r <- with(arkingdata, 8- x354)
attach(arkingdata)
#Lage nytt subsett for holdninger til brann
holdningbrann <- subset(arkingdata, select=c(x321r,x322r,x323r))
#Lage nytt subsett for holdnigner til risiko
holdningrisiko <- subset(arkingdata, select=c(x351r,x352r,x353r, x354r))
#deskriptiv statstikk
attach(arkingdata)
library(psych)#laste inn psykonometripakke "Psych"
describe(egenkontroll)
describe(erfaringbygg)
describe(erfaringdel)
describe(holdningbrann)
describe(holdningkostnad)
describe(holdningmekanisk)
describe(holdningmiljo)
describe(holdningprefabberegning)
describe(holdningrisiko)
describe(holdningtilgjengelig)
describe(holdningvisuelt)
describe(informasjonbehov)
describe(informasjonskilder)
describe(intensjononske)
describe(intensjonplan)
describe(kunnskaptilegning)
describe(normdekker)
describe(normfasade)
describe(norminterior)
describe(normkonstruksjon)
describe(normtre)
describe(prosessdekker)
describe(prosessfasade)
describe(prosessinterior)
describe(prosesskonstruksjon)
#Deskriptiv statistikk kategoriske variabler
table(x21) #antall med ingeniørutdanning
table(x22) #antall med arkitektutdanning
table(x23) #antall med fagutdanning
table(x24) #antall med økonomiutdanning
table(x25) #antall med jusutdanning
table(x26) #antall med annen utdanning
table(x31) #antall prosjekterende arkitekter
table(x32) #antall prosjekterende bygningsingeniører
table(x33) #antall byggherrer
table(x34) #antall entreprenører
table(x35) #antall som har andre roller
#Frekvenser for tabeller
freqtable <-
#lager subset "Structural"
structural <- subset(arkingdata, select=c(x51,x52,x53,x54,x71,x72,
x73,x74,x75,x83,x93,x101,x102,x103,x231,x232,x233,x234,x235,x236,x271,x272,
x273,x274,x275,x276,x281,x282,x283,x291,x292,x293,x294,x301,x302,x303,x304,
x311,x312,x313,x321r,x322r,x323r,x331,x332,x341,x342,x343,x344,x351r,x352r,
x353r,x354r))
#Bartletts test of sphericity
library(stats)
scor <- cor(structural) #lager korrelasjonsmatrise for subset "structural"
write.csv(scor, file="scor.csv", dec = ",", row.names=TRUE) #skriver korrelasjonsmatrise til fil
cortest.bartlett(scor, n = 203) # n = antall variabler
cor(structural) #korrelasjonsmatrise for subset "structural"
#Faktoranalyse med "psych"-pakken -- innledende faktoranalyse
fa(structural,nfactors=17,n.obs = NA, rotate="oblimin", scores=TRUE, residuals=FALSE, SMC=TRUE,
covar=FALSE,missing=FALSE,impute="median",min.err = 0.001,
max.iter = 50,symmetric=TRUE,warnings=TRUE,fm="ml",alpha=.1)
#Faktoranalyse av subset "structural" med Stats-pakken -- innledende faktoranalyse
library(stats)
library(GPArotation)
#Oblimin
structfact <- factanal(structural, factors=17, rotation="oblimin", fm="ml") #faktoranalyse, oblimin rotasjon og maximum likelihood
loadings(structfact)
print(structfact, digits = 3, cutoff = 0.3, sort = FALSE) #faktorladinger
#Varimax
structfact <- factanal(structural, factors=17, rotation="varimax", fm="ml") #faktoranalyse, varimax rotasjon og maximum likelihood
loadings(structfact)
print(structfact, digits = 3, cutoff = 0.3, sort = FALSE) #faktorladinger
#Antall faktorer som skal beholdes VSS- og Scree test og parallel analysis
library(psych)
vss(structural, n = 17, rotate = "varimax", diagonal = FALSE, fm = "mle", n.obs=203,plot=TRUE,title="Very Simple Structure")
scree(structural, factors=TRUE, main="Scree plot", add=FALSE)
fa.parallel(cor(structural), n.obs=203, fa="both", main="Parallel Analysis score", ntrials=100)
#Fjerne variabler fra subset "structural" etter oblimin rotasjon
structural2 <- structural
structural2$x74 <- structural2$x231 <- structural2$x232 <- structural2$x236 <- structural2$x281 <- structural2$x282 <- structural2$x283 <- structural2$x311 <- structural2$x331 <-structural2$x341 <-structural2$X343 <- NULL
#Faktoranalyse, andre kjøring
library(stats)
structfact2 <- factanal(structural2, factors=11, rotation="oblimin", fm="ml") #faktoranalyse, varimax rotasjon og maximum likelihood
loadings(structfact2)
print(structfact2, digits = 3, cutoff = 0.4, sort = FALSE) #faktorladinger
#Antall faktorer som skal beholdes Scree test og parallel analysis
library(psych)
vss(structural, n = 11, rotate = "varimax", diagonal = FALSE, fm = "mle", n.obs=203,plot=TRUE,title="Very Simple Structure")
scree(structural2, factors=TRUE, main="Scree plot", add=FALSE)
fa.parallel(cor(structural2), n.obs=203, fa="both", main="Parallel Analysis score", ntrials=100)
#Fjerne variabler fra subset "structural2"
structural3 <- structural2
structural$x101 <- structural3$x235 <- structural3$x312 <- structural3$x313 <- structural3$x332 <- NULL
#Faktoranalyse, tredje kjøring
library(stats)
structfact3 <- factanal(structural3, factors=11, rotation="oblimin", fm="ml") #faktoranalyse, varimax rotasjon og maximum likelihood
loadings(structfact3)
print(structfact3, digits = 3, cutoff = 0.4, sort = FALSE) #faktorladinger
#Antall faktorer som skal beholdes Scree test og parallel analysis
library(psych)
scree(structural3, factors=TRUE, main="Scree plot", add=FALSE)
fa.parallel(cor(structural3), n.obs=203, fa="both", main="Parallel Analysis score", ntrials=100)
#Fjerne variabler fra subset "structural3"
structural4 <- structural3
structural4$x51 <- structural4$x354r <- NULL
#Faktoranalyse, fjerde kjøring
library(stats)
structfact4 <- factanal(structural4, factors=11, rotation="oblimin", fm="ml") #faktoranalyse, varimax rotasjon og maximum likelihood
loadings(structfact4)
print(structfact4, digits = 3, cutoff = 0.4, sort = FALSE) #faktorladinger
#Fjerne variabler fra subset "structural4"
structural5 <- structural4
structural5$x272 <- NULL
#Faktoranalyse, femte kjøring
library(stats)
structfact5 <- factanal(structural5, factors=11, rotation="oblimin", fm="ml") #faktoranalyse, varimax rotasjon og maximum likelihood
loadings(structfact5)
print(structfact5, digits = 3, cutoff = 0.4, sort = FALSE) #faktorladinger
#Chronbach`s alpha for faktorene i "structural5"
## 1. Lage subset for de ulike faktorene
f1 <- subset(structural5, select=c(x291,x292,x293,x294)) #faktor 1
f2 <- subset(structural5, select=c(x351r,x352r,x353r)) #faktor 2
f3 <- subset(structural5, select=c(x321r,x322r,x323r)) #faktor 3
f4 <- subset(structural5, select=c(x301,x302,x303,x304)) #faktor 4
f5 <- subset(structural5, select=c(x271,x273,x274)) #faktor 5
f6 <- subset(structural5, select=c(x52,x53,x54,x71,x72)) #faktor 6
f7 <- subset(structural5, select=c(x101,x102,x103,x233,x234))
f8 <- subset(structural5, select=c(x73,x73)) #faktor 8
f9 <- subset(structural5, select=c(x83,x93)) #faktor 9
f10 <- subset(structural5, select=c(x275,x276)) #faktor 10
f11 <- subset(structural5, select=c(x342,x344)) #faktor 11
## 2. Chronbach`s alpha for de ulike faktorene (skalaene)
alpha(f1, keys=NULL, cumulative=FALSE, title=NULL, na.rm=TRUE) #CA for skala/faktor 1
alpha(f2, keys=NULL, cumulative=FALSE, title=NULL, na.rm=TRUE) #CA for skala/faktor 2
alpha(f3, keys=NULL, cumulative=FALSE, title=NULL, na.rm=TRUE) #CA for skala/faktor 3
alpha(f4, keys=NULL, cumulative=FALSE, title=NULL, na.rm=TRUE) #CA for skala/faktor 4
alpha(f5, keys=NULL, cumulative=FALSE, title=NULL, na.rm=TRUE) #CA for skala/faktor 5
alpha(f6, keys=NULL, cumulative=FALSE, title=NULL, na.rm=TRUE) #CA for skala/faktor 6
alpha(f7, keys=NULL, cumulative=FALSE, title=NULL, na.rm=TRUE) #CA for skala/faktor 7
alpha(f8, keys=NULL, cumulative=FALSE, title=NULL, na.rm=TRUE) #CA for skala/faktor 8
alpha(f9, keys=NULL, cumulative=FALSE, title=NULL, na.rm=TRUE) #CA for skala/faktor 9
alpha(f10, keys=NULL, cumulative=FALSE, title=NULL, na.rm=TRUE) #CA for skala/faktor 10
alpha(f11, keys=NULL, cumulative=FALSE, title=NULL, na.rm=TRUE) #CA for skala/faktor 11
#Fjerne variabler fra subset "structural4" (x101 fører til lav CA)
structural6 <- structural5
structural6$x101 <- NULL
#Faktoranalyse, sjette kjøring
library(stats)
structfact6 <- factanal(structural6, factors=11, rotation="oblimin", fm="ml") #faktoranalyse, varimax rotasjon og maximum likelihood
loadings(structfact6)
print(structfact6, digits = 3, cutoff = 0.4, sort = FALSE) #faktorladinger
#Alle items loader på en av elleve faktorer. Fjerner x101 fra f7
f7 <- subset(structural6, select=c(x102,x103,x233,x234))
## Inter-item correlation for de ulike skalaene
cor(f1)
cor(f2)
cor(f3)
cor(f4)
cor(f5)
cor(f6)
cor(f7)
cor(f8)
cor(f9)
cor(f10)
cor(f11)
#Lage nye variabler fra items som ladet på de forskjellige faktorene
arkingdata$varf1 <- with(structural6, (x291+ x292+ x293+ x294)/4)
arkingdata$varf2 <- with(structural6, (x351r+ x352r+ x353r)/3)
arkingdata$varf3 <- with(structural6, (x321r+ x322r+ x323r)/3)
arkingdata$varf4 <- with(structural6, (x301+ x302+ x303+ x304)/4)
arkingdata$varf5 <- with(structural6, (x52+ x52+ x54+ x71+ x72)/5)
arkingdata$varf6 <- with(structural6, (x271+ x273+ x274)/3)
arkingdata$varf8 <- with(structural6, (x73+ x75)/2)
arkingdata$varf7 <- with(structural6, (x102+ x103+ x233+ x234)/4)
arkingdata$varf9 <- with(structural6, (x83+ x93)/2)
arkingdata$varf10 <- with(structural6, (x275+ x276)/2)
arkingdata$varf11 <- with(structural6, (x342+ x344)/2)
#Regresjonsanalyse, lineær regresjon
conmreg <- lm(varf9 ~ varf1 + varf2 + varf3 + varf4 + varf5 + varf6 + varf7 + varf8 + varf10 + varf11, data=arkingdata)
summary(conmreg) #Vis resultater. Se kapittel 11.4 i R Cookbook for hvordan output skal tolkes
#Regression statistics
anova(conmreg) #ANOVA-tabell
coefficients(conmreg) #Modellkoeffisienter
confint(conmreg) #Konfidensintervall for regresjonskoeffisientene
deviance(conmreg) #Residuals sum of squares
effects(conmreg) #Vector of orthogonal effects
fitted(conmreg) #Vector of fitted y values
residuals(conmreg) #Model residuals
vcov(conmreg) #Variance-covariance matrix of the main parameters
#Diagnostics plot
layout(matrix(c(1,2,3,4)2,2)) #optional 4 graphs/page
plot(conmreg)
#Lage tekstfiler med data
write.table(egenkontroll, file="egenkontroll.txt", row.names=FALSE, sep="\t")
write.table(intensjonsonske, file="intensjononske.txt", row.names=FALSE, sep="\t")
write.table(intensjononske, file="intensjononske.txt", row.names=FALSE, sep="\t")
write.table(intensjonplan, file="intensjonplan.txt", row.names=FALSE, sep="\t")
write.table(erfaringbygg, file="erfaringbygg.txt", row.names=FALSE, sep="\t")
write.table(erfaringdel, file="erfaringdel.txt", row.names=FALSE, sep="\t")
write.table(holdningbrann, file="holdningbrann.txt", row.names=FALSE, sep="\t")
write.table(holdningkostnad, file="holdningkostnad.txt", row.names=FALSE, sep="\t")
write.table(holdningmekanisk, file="holdningmekanisk.txt", row.names=FALSE, sep="\t")
write.table(holdningmiljo, file="holdningmiljo.txt", row.names=FALSE, sep="\t")
write.table(holdningprefabberegning, file="holdningprefabberegning.txt", row.names=FALSE, sep="\t")
write.table(holdningrisiko, file="holdningrisiko.txt", row.names=FALSE, sep="\t")
write.table(holdningtilgjengelig, file="holdningtilgjengelig.txt", row.names=FALSE, sep="\t")
write.table(holdningvisuelt, file="holdningvisuelt.txt", row.names=FALSE, sep="\t")
write.table(informasjonsbehov, file="informasjonsbehov.txt", row.names=FALSE, sep="\t")
write.table(informasjonbehov, file="informasjonbehov.txt", row.names=FALSE, sep="\t")
write.table(informasjonskilder, file="informasjonskilder.txt", row.names=FALSE, sep="\t")
write.table(kunnskapstilegning, file="kunnskapstilegning.txt", row.names=FALSE, sep="\t")
write.table(kunnskaptilegning, file="kunnskaptilegning.txt", row.names=FALSE, sep="\t")
write.table(normdekker, file="normdekker.txt", row.names=FALSE, sep="\t")
write.table(normfasade, file="normfasade.txt", row.names=FALSE, sep="\t")
write.table(norminterior, file="norminterior.txt", row.names=FALSE, sep="\t")
write.table(normkonstruksjon, file="normkonstruksjon.txt", row.names=FALSE, sep="\t")
write.table(normtre, file="normtre.txt", row.names=FALSE, sep="\t")
write.table(prosessdekker, file="prosessdekker.txt", row.names=FALSE, sep="\t")
write.table(prosessfasade, file="prosessfasade.txt", row.names=FALSE, sep="\t")
write.table(prosessinterior, file="prosessinteror.txt", row.names=FALSE, sep="\t")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment