#metaSEM paketinin yüklenmesi ve aktif hale getirilmesi
install.packages("metaSEM")
library(metaSEM)

#motivayon adlı veri dosyasının R programına aktarılması ve görüntülenmesi
veri<-read.csv("motivasyon.csv", header = T, sep = ";")
View(veri)

#Rastgele etkiler modeline göre etki büyüklüklerinin hesaplanması
REM1<- meta(y=cbind(veri$iş_per.içsel, veri$iş_per.dışsal),
           v=cbind(veri$var_iş_per.içsel, veri$kov_rpi.rpd, veri$var_iş_per.dışsal),
           model.name="Random effects model")
summary(REM1)

#Eğer sonuç tablosunda "Open Mx status1:" 1 ya da 0 dan farklı ise aşağıdaki kod çalıştırılır.
REM1<-rerun(REM1)

#Sonuç tablosundan varyansları çıkarıp varyan matrisi oluşturmak için aşağıdaki kod çalıştırılır.
T2<-vec2symMat(coef(REM, select="random"))
T2

#Bu katsayıları yorumlayabilmek için korelasyon matrislerine dönüştürülmesi gerekmektedir. 
Kor<- cov2cor(T2)
Kor

#İş performansı ile motivasyon arasındaki ilişkiyi görselleştirmek için aşağıdaki kod kullanılır.
plot(REM, axis.labels=c("iş performansı ve içsel","iş performansı ve dışsal"), 
     study.ellipse.plot=FALSE, xlim=c(0.0, 1.0), ylim=c(0.0, 1.0))

#Karışık Etkiler Modeli
#Çalışanın niteliğine göre etki büyüklüklerini test etmek için  öncelikle veri, numerik hale getirilir.
beyaz <- ifelse(veri$çalışan=="beyaz", 1, 0)
beyaz

#Değişken numerik hale getrildikten sonra çalışanın niteliğinin anlamlı bir moderatör olup olmadığını belirleme

REM2<- meta(y=cbind(iş_per.içsel, iş_per.dışsal),
            v=cbind(var_iş_per.içsel, kov_rpi.rpd, var_iş_per.dışsal),
            x=beyaz, data=veri)
REM2 <- rerun(REM2)
summary(REM2)

#Regresyon katsayılarının sıfır olup olmadığını belirlemek için hesapladığımız modellerin (REM1 ve REM2) karşılaştırılması 
anova(REM2, REM1)





