#Load Package install.packages("metafor") library(metafor) install.packages("forestplot") library(forestplot) #DataSet mydata <- read.delim("~/Desktop/worrydata") #Describe Data worryr<-(mydata$WorryR) N<-(mydata$N) ID<-(mydata$Number) age<-(mydata$Mean.Age) Female<-(mydata$PercentageFemale) SampleType<-(mydata$Percentage.of.Clinical) #META-ANALYSIS OF IU and WORRY #Calculate Fisher's Z and V for IU and Worry #yi valueas are r to z transformed correlations #vi values the corresponding sampling variances ESWORRY<- escalc(measure = "ZCOR", ri=worryr, ni=N, data = mydata) #Random Effect Model for IU and Worry REworry<- rma(yi=ESWORRY$yi, vi=ESWORRY$vi, data=mydata, digit=3) predict(REworry, transf = transf.ztor) forest.rma(REworry, slab = paste(ESWORRY$Author, ", ", ESWORRY$Date, sep = ""),showweights = TRUE, transf = transf.ztor) funnel(REworry) #Fisher r-to-Z transformation-conversion back to r transf.ztor(enter z value of the result) #leaveout #A single outlying trial could be the source of substantialheterogeneity. #To identify suspicious cases, a leave-one-out method can be usedwhereby #we rerun the meta-analysis, iteratively removing studies. cases<- leave1out(REworry) which(cases$I2 ==min(cases$I2)) sum(cases$I2<30) # age as a moderator MEworryage<-rma(yi=ESWORRY$yi, vi=ESWORRY$vi, mods= ~ESWORRY$Mean.Age, data=mydata) # gender as a moderator MEworrygender<-rma(yi=ESWORRY$yi, vi=ESWORRY$vi, mods= ~(ESWORRY$PercentageFemale), data=mydata) # study location as a moderator MEworrylocation<-rma(yi=ESWORRY$yi, vi=ESWORRY$vi, mods= ~factor(ESWORRY$Study.Location), data=mydata) # IU measure as a moderator MEworryIUmeasure<-rma(yi=ESWORRY$yi, vi=ESWORRY$vi, mods= ~factor(ESWORRY$IU.Measure), data=mydata) predict(MEworryIUmeasure, transf = transf.ztor) forest(MEworryIUmeasure, slab = ESWORRY$Author,showweights = TRUE, transf = transf.ztor) # worry measure as a moderator MEworryWmeasure<-rma(yi=ESWORRY$yi, vi=ESWORRY$vi, mods= ~factor(ESWORRY$Worry.Measure), data=mydata) # Sample type as a moderator (percentage of Clinical) MEworrysampletype<-rma(yi=ESWORRY$yi, vi=ESWORRY$vi, mods= ~ESWORRY$Percentage.of.Clinical,data=mydata) #sample type as moderator (categorical) MEE<- rma(yi=ESWORRY$yi, vi=ESWORRY$vi, mods = ~factor(ESWORRY$sample.type), data=mydata) #Rosenthal's fail-safe N fsn(yi=ESWORRY$yi, vi=ESWORRY$vi, data=mydata, type = "Rosenthal", alpha = .05) # Egger Regression test regtest(REworry, model = "rma", predictor = "sei") regtest(REworry, model = "rma", predictor = "vi") regtest(REworry, model = "rma", predictor = "ni") regtest(REworry, model = "rma", predictor = "ninv") regtest(REworry, model = "rma", predictor = "sqrtni") regtest(REworry, model = "rma", predictor = "sqrtninv") #Begg and Mazumdar rank correlation test ranktest(REworry)