install.packages(c('tidyverse', 'MASS',
'magrittr', 'robustHD',
'tibble', 'psych',
'knitr', 'tidyr', 'ggplot2', 'effectsize', 'esc', 'meta'), repos = list(CRAN="http://cran.rstudio.com/"))
## Installing packages into '/Users/perso204/Library/R/x86_64/4.4/library'
## (as 'lib' is unspecified)
##
## The downloaded binary packages are in
## /var/folders/96/xz1fg2r56mb2kymyn8r37rqc0000gq/T//Rtmp2lZhHJ/downloaded_packages
library(readxl)
data <- read_excel("~/Desktop/Reverse meta-analysis/Reverse_meta_data.xlsx",
col_types = c("text", "text", "numeric",
"text", "numeric", "numeric", "numeric",
"numeric", "numeric", "numeric",
"text", "numeric", "numeric", "numeric",
"numeric", "numeric", "numeric",
"numeric", "numeric", "numeric",
"text", "text", "text", "text", "text"))
## Warning: Expecting numeric in E10 / R10C5: got 'NA'
## Warning: Expecting numeric in F10 / R10C6: got 'NA'
## Warning: Expecting numeric in G10 / R10C7: got 'NA'
## Warning: Expecting numeric in H10 / R10C8: got 'NA'
## Warning: Expecting numeric in I10 / R10C9: got 'NA'
## Warning: Expecting numeric in J10 / R10C10: got 'NA'
## Warning: Expecting numeric in L10 / R10C12: got 'NA'
## Warning: Expecting numeric in F11 / R11C6: got 'NA'
## Warning: Expecting numeric in G11 / R11C7: got 'NA'
## Warning: Expecting numeric in I11 / R11C9: got 'NA'
## Warning: Expecting numeric in J11 / R11C10: got 'NA'
## Warning: Expecting numeric in L11 / R11C12: got 'NA'
## Warning: Expecting numeric in F12 / R12C6: got 'NA'
## Warning: Expecting numeric in G12 / R12C7: got 'NA'
## Warning: Expecting numeric in I12 / R12C9: got 'NA'
## Warning: Expecting numeric in J12 / R12C10: got 'NA'
## Warning: Expecting numeric in L12 / R12C12: got 'NA'
## Warning: Expecting numeric in F13 / R13C6: got 'NA'
## Warning: Expecting numeric in G13 / R13C7: got 'NA'
## Warning: Expecting numeric in I13 / R13C9: got 'NA'
## Warning: Expecting numeric in J13 / R13C10: got 'NA'
## Warning: Expecting numeric in L13 / R13C12: got 'NA'
## Warning: Expecting numeric in F14 / R14C6: got 'NA'
## Warning: Expecting numeric in G14 / R14C7: got 'NA'
## Warning: Expecting numeric in I14 / R14C9: got 'NA'
## Warning: Expecting numeric in J14 / R14C10: got 'NA'
## Warning: Expecting numeric in L14 / R14C12: got 'NNA'
library(esc)
################### Recalculated Effect Size #################
(a1<- esc_mean_sd(grp2m = 630324, # mean of men
grp2sd = 1662559, # standard deviation of men
grp2n = 2890, # sample for men
grp1m = 394730, # mean of women
grp1sd = 666574, # standard deviation of women
grp1n = 1296, # sample size for women
es.type = "g",
study = "Zhou et al. (2018)")) # convert to SMD; use "g" for Hedges' g
##
## Zhou et al. (2018) (n=4186)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.1647
## Standard Error: 0.0335
## Variance: 0.0011
## Lower CI: -0.2303
## Upper CI: -0.0991
## Weight: 892.1674
################### Meta Analysis #################
# creating ID variable so it's easier to specify which row to use
data <- tibble::rowid_to_column(data, "ID")
(b1<- esc_mean_sd(grp2m = data$Men_m_meta[which(data$ID==1)], # mean of men
grp2sd = data$Men_SD_meta[which(data$ID==1)], # standard deviation of men
grp2n = data$Men_n_meta[which(data$ID==1)], # sample for men
grp1m = data$Women_m_meta[which(data$ID==1)], # mean of women
grp1sd = data$Women_SD_meta[which(data$ID==1)], # standard deviation of women
grp1n = data$Women_n_meta[which(data$ID==1)], # sample size for women
es.type = "g",
study = "Zhou et al. (2018)")) # convert to SMD; use "g" for Hedges' g
##
## Zhou et al. (2018) (n=4186)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.1647
## Standard Error: 0.0335
## Variance: 0.0011
## Lower CI: -0.2303
## Upper CI: -0.0991
## Weight: 892.1674
a2<- esc_mean_sd(grp2m = 768931, # mean of men
grp2sd = 410427, # standard deviation of men
grp2n = 7694, # sample for men
grp1m = 706964, # mean of women
grp1sd = 504335, # standard deviation of women
grp1n = 3930, # sample size for women
es.type = "g",
study= "Tamblyn et al. (2018)") # convert to SMD; use "g" for Hedges' g
#################### Meta Analysis ###################
(b2<- esc_mean_sd(grp2m = data$Men_m_meta[which(data$ID==2)], # mean of men
grp2sd = data$Men_SD_meta[which(data$ID==2)], # standard deviation of men
grp2n = data$Men_n_meta[which(data$ID==2)], # sample for men
grp1m = data$Women_m_meta[which(data$ID==2)], # mean of women
grp1sd = data$Women_SD_meta[which(data$ID==2)], # standard deviation of women
grp1n = data$Women_n_meta[which(data$ID==2)], # sample size for women
es.type = "g",
study = "Tamblyn et al. (2018)")) # convert to SMD; use "g" for Hedges' g
##
## Tamblyn et al. (2018) (n=9328)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.1399
## Standard Error: 0.0222
## Variance: 0.0005
## Lower CI: -0.1833
## Upper CI: -0.0964
## Weight: 2035.0744
a3<- esc_mean_sd(grp2m = 409910, # mean of men
grp2sd = 840087, # standard deviation of men
grp2n = 4357, # sample for men
grp1m = 288011, # mean of women
grp1sd = 704474, # standard deviation of women
grp1n = 1695, # sample size for women
es.type = "g",
study = "Head et al. (2013)") # convert to SMD; use "g" for Hedges' g
############### Meta Analysis ############
(b3<- esc_mean_sd(grp2m = data$Men_m_meta[which(data$ID==3)], # mean of men
grp2sd = data$Men_SD_meta[which(data$ID==3)], # standard deviation of men
grp2n = data$Men_n_meta[which(data$ID==3)], # sample for men
grp1m = data$Women_m_meta[which(data$ID==3)], # mean of women
grp1sd = data$Women_SD_meta[which(data$ID==3)], # standard deviation of women
grp1n = data$Women_n_meta[which(data$ID==3)], # sample size for women
es.type = "g",
study = "Head et al. (2013)")) # convert to SMD; use "g" for Hedges' g
##
## Head et al. (2013) (n=6052)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.1515
## Standard Error: 0.0287
## Variance: 0.0008
## Lower CI: -0.2077
## Upper CI: -0.0953
## Weight: 1217.4583
##Titone et al. (2018): Discovery Awards
library(readr)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
Discovery_Awards <- read_csv("~/Downloads/Discovery_Awards.csv")
## Rows: 3391 Columns: 5
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (4): gender, Project Title, Fiscal Year, Type
## dbl (1): Discovery Grant Amount
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
Discovery_Awards$awardamount <- Discovery_Awards$`Discovery Grant Amount`
Discovery_Awards$awardamount<- as.numeric(Discovery_Awards$awardamount) # convertering to numeric and factor
Discovery_Awards$gender<- as.factor(Discovery_Awards$gender)
group_by(Discovery_Awards, gender) %>% # finding ms and sds by gender
summarise(
count = n(),
mean = mean(awardamount, na.rm = TRUE),
sd = sd(awardamount, na.rm = TRUE))
## # A tibble: 2 × 4
## gender count mean sd
## <fct> <int> <dbl> <dbl>
## 1 f 1206 30892. 12708.
## 2 m 2185 34629. 16461.
a4<- esc_mean_sd(grp2m = 34628.63, # mean of men
grp2sd = 16461.05, # standard deviation of men
grp2n = 2185, # sample for men
grp1m = 30891.63, # mean of women
grp1sd = 12707.96, # standard deviation of women
grp1n = 1206, # sample size for women
es.type = "g",
study = "Titone et al. (2018): Discovery Awards") # convert to SMD; use "g" for Hedges' g)
################ META ANALYSIS ##################
(b4<- esc_mean_sd(grp2m = data$Men_m_meta[which(data$ID==5)], # mean of men
grp2sd = data$Men_SD_meta[which(data$ID==5)], # standard deviation of men
grp2n = data$Men_n_meta[which(data$ID==5)], # sample for men
grp1m = data$Women_m_meta[which(data$ID==5)], # mean of women
grp1sd = data$Women_SD_meta[which(data$ID==5)], # standard deviation of women
grp1n = data$Women_n_meta[which(data$ID==5)], # sample size for women
es.type = "g",
study = "Titone et al. (2018): Discovery Awards")) # convert to SMD; use "g" for Hedges' g
##
## Titone et al. (2018): Discovery Awards (n=3391)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.2453
## Standard Error: 0.0360
## Variance: 0.0013
## Lower CI: -0.3159
## Upper CI: -0.1747
## Weight: 771.7660
##Titone et al. (2018): CRC Awards
CRCaward<- read_csv("~/Downloads/CRC_Awards.csv")
## Rows: 330 Columns: 6
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (4): gender, Project Title, Fiscal Year, Award Type
## dbl (2): Amount($), amount
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
CRCaward$gender<- as.factor(CRCaward$gender)
group_by(CRCaward, gender) %>% # finding ms and sds by gender
summarise(
count = n(),
mean = mean(amount, na.rm = TRUE),
sd = sd(amount, na.rm = TRUE))
## # A tibble: 2 × 4
## gender count mean sd
## <fct> <int> <dbl> <dbl>
## 1 f 148 122985. 58999.
## 2 m 182 129863. 56996.
a5<-esc_mean_sd(grp2m = 129863.3, # mean of men
grp2sd = 56996.25, # standard deviation of men
grp2n = 182, # sample for men
grp1m = 122985.4, # mean of women
grp1sd = 58999.18, # standard deviation of women
grp1n = 148, # sample size for women
es.type = "g",
study = "Titone et al. (2018): CRC Awards")# convert to SMD; use "g" for Hedges' g
################## META ANALYSIS ###################
(b5<- esc_mean_sd(grp2m = data$Men_m_meta[which(data$ID==6)], # mean of men
grp2sd = data$Men_SD_meta[which(data$ID==6)], # standard deviation of men
grp2n = data$Men_n_meta[which(data$ID==6)], # sample for men
grp1m = data$Women_m_meta[which(data$ID==6)], # mean of women
grp1sd = data$Women_SD_meta[which(data$ID==6)], # standard deviation of women
grp1n = data$Women_n_meta[which(data$ID==6)], # sample size for women
es.type = "g",
study = "Titone et al. (2018): CRC Awards"))
##
## Titone et al. (2018): CRC Awards (n=330)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.1114
## Standard Error: 0.1108
## Variance: 0.0123
## Lower CI: -0.3285
## Upper CI: 0.1057
## Weight: 81.4986
a6<- esc_mean_sd(grp2m = 1080, # mean of men
grp2sd = 405, # standard deviation of men
grp2n = 612, # sample for men
grp1m = 912, # mean of women
grp1sd = 358, # standard deviation of women
grp1n = 398, # sample size for women
es.type = "g",
study = "Steinþórsdóttir et al. (2020): UI") # convert to SMD; use "g" for Hedges' g
############# META ANALYSIS ################
(b6<- esc_mean_sd(grp2m = data$Men_m_meta[which(data$ID==7)], # mean of men
grp2sd = data$Men_SD_meta[which(data$ID==7)], # standard deviation of men
grp2n = data$Men_n_meta[which(data$ID==7)], # sample for men
grp1m = data$Women_m_meta[which(data$ID==7)], # mean of women
grp1sd = data$Women_SD_meta[which(data$ID==7)], # standard deviation of women
grp1n = data$Women_n_meta[which(data$ID==7)], # sample size for women
es.type = "g",
study = "Steinþórsdóttir et al. (2020): UI"))
##
## Steinþórsdóttir et al. (2020): UI (n=1010)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.4338
## Standard Error: 0.0651
## Variance: 0.0042
## Lower CI: -0.5614
## Upper CI: -0.3062
## Weight: 235.8576
a7<- esc_mean_sd(grp2m = 6752, # mean of men
grp2sd = 3699, # standard deviation of men
grp2n = 65, # sample for men
grp1m = 5744, # mean of women
grp1sd = 1838, # standard deviation of women
grp1n = 32, # sample size for women
es.type = "g",
study = "Steinþórsdóttir et al. (2020): IRF") # convert to SMD; use "g" for Hedges' g
################# META ANALYSIS ###############
(b7<- esc_mean_sd(grp2m = data$Men_m_meta[which(data$ID==8)], # mean of men
grp2sd = data$Men_SD_meta[which(data$ID==8)], # standard deviation of men
grp2n = data$Men_n_meta[which(data$ID==8)], # sample for men
grp1m = data$Women_m_meta[which(data$ID==8)], # mean of women
grp1sd = data$Women_SD_meta[which(data$ID==8)], # standard deviation of women
grp1n = data$Women_n_meta[which(data$ID==8)], # sample size for women
es.type = "g",
study = "Steinþórsdóttir et al. (2020): IRF"))
##
## Steinþórsdóttir et al. (2020): IRF (n=97)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.3113
## Standard Error: 0.2171
## Variance: 0.0471
## Lower CI: -0.7369
## Upper CI: 0.1142
## Weight: 21.2124
library(readxl)
SwissNSF <- read_excel("~/Desktop/Reverse meta-analysis/SwissNSF_20052020.xlsx")
SwissNSF$Year<- as.numeric(SwissNSF$Year)
SwissNSF <- SwissNSF %>%
dplyr::filter(Year < 2021) # for some reason if only selecting years 2005 to 2020 in Swiss website it still pulls data through 2024, so removing grants after 2020
SwissNSF$ResponsibleApplicantGender<- as.factor(SwissNSF$ResponsibleApplicantGender)
SwissNSF$Funding_Submitted<- as.numeric(SwissNSF$Funding_Submitted)
SwissNSF$Funding<- as.numeric(SwissNSF$Funding)
SwissNSF$Grants_Submitted<- as.numeric(SwissNSF$Grants_Submitted)
SwissNSF$Grants<- as.numeric(SwissNSF$Grants)
SwissNSF_project<- subset(SwissNSF, SwissNSF$FundingInstrumentGaLevel1=="Projects") #creating subset of project grant
SwissNSF_career<- subset(SwissNSF, SwissNSF$FundingInstrumentGaLevel1=="Careers")
SwissNSF_programmes<- subset(SwissNSF, SwissNSF$FundingInstrumentGaLevel1=="Programmes")
# Ns for Project Grant
sum(SwissNSF_project$Grants[which(SwissNSF_project$ResponsibleApplicantGender=="women")])
## [1] 3342
sum(SwissNSF_project$Grants[which(SwissNSF_project$ResponsibleApplicantGender=="men")])
## [1] 14161
# Ns for Career Grants
sum(SwissNSF_career$Grants[which(SwissNSF_career$ResponsibleApplicantGender=="women")])
## [1] 6058
sum(SwissNSF_career$Grants[which(SwissNSF_career$ResponsibleApplicantGender=="men")])
## [1] 8490
#Ns for Programme Grants
sum(SwissNSF_programmes$Grants[which(SwissNSF_programmes$ResponsibleApplicantGender=="women")])
## [1] 635
sum(SwissNSF_programmes$Grants[which(SwissNSF_programmes$ResponsibleApplicantGender=="men")])
## [1] 2311
##### META ANALYSIS ###########
(b8<- esc_mean_sd(grp2m = data$Men_m_meta[which(data$ID==10)], # mean of men
grp2sd = data$Men_SD_meta[which(data$ID==10)], # standard deviation of men
grp2n = data$Men_n_meta[which(data$ID==10)], # sample for men
grp1m = data$Women_m_meta[which(data$ID==10)], # mean of women
grp1sd = data$Women_SD_meta[which(data$ID==10)], # standard deviation of women
grp1n = data$Women_n_meta[which(data$ID==10)], # sample size for women
es.type = "g",
study = "Swiss NSF: Project"))
##
## Swiss NSF: Project (n=17495)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.2597
## Standard Error: 0.0193
## Variance: 0.0004
## Lower CI: -0.2975
## Upper CI: -0.2218
## Weight: 2685.9069
(b9<- esc_mean_sd(grp2m = data$Men_m_meta[which(data$ID==11)], # mean of men
grp2sd = data$Men_SD_meta[which(data$ID==11)], # standard deviation of men
grp2n = data$Men_n_meta[which(data$ID==11)], # sample for men
grp1m = data$Women_m_meta[which(data$ID==11)], # mean of women
grp1sd = data$Women_SD_meta[which(data$ID==11)], # standard deviation of women
grp1n = data$Women_n_meta[which(data$ID==11)], # sample size for women
es.type = "g",
study = "Swiss NSF: Career"))
##
## Swiss NSF: Career (n=14557)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.3030
## Standard Error: 0.0169
## Variance: 0.0003
## Lower CI: -0.3362
## Upper CI: -0.2699
## Weight: 3498.8717
(b10<- esc_mean_sd(grp2m = data$Men_m_meta[which(data$ID==12)], # mean of men
grp2sd = data$Men_SD_meta[which(data$ID==12)], # standard deviation of men
grp2n = data$Men_n_meta[which(data$ID==12)], # sample for men
grp1m = data$Women_m_meta[which(data$ID==12)], # mean of women
grp1sd = data$Women_SD_meta[which(data$ID==12)], # standard deviation of women
grp1n = data$Women_n_meta[which(data$ID==12)], # sample size for women
es.type = "g",
study = "Swiss NSF: Programmes"))
##
## Swiss NSF: Programmes (n=2942)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.3887
## Standard Error: 0.0453
## Variance: 0.0020
## Lower CI: -0.4774
## Upper CI: -0.3000
## Weight: 488.3149
NIH<- read_excel("~/Desktop/Reverse meta-analysis/Compliled Award and Award Amount NIH Funding .xlsx")
## New names:
## • `` -> `...8`
## • `` -> `...9`
## • `` -> `...10`
## • `` -> `...11`
## • `` -> `...12`
NIH <- NIH %>%
dplyr::filter(Year < 2021,
Year > 2004) # meta-analysis only included years 2005-2021
NIH$Women_n<- as.numeric(NIH$Women_n)
NIH$Men_n<- as.numeric(NIH$Men_n)
NIH$Women_currentdollars<- as.numeric(NIH$Women_currentdollars) #numbers represent averages by year
NIH$Men_current<- as.numeric(NIH$Men_current) # numbers represent averages by year
NIH$Year<- as.numeric(NIH$Year)
(NIH.women.n<- sum(NIH$Women_n))
## [1] 213513
(NIH.men.n<- sum(NIH$Men_n))
## [1] 498970
################ META ANALYSIS ###################
(b11<- esc_mean_sd(grp2m = data$Men_m_meta[which(data$ID==13)], # mean of men
grp2sd = data$Men_SD_meta[which(data$ID==13)], # standard deviation of men
grp2n = data$Men_n_meta[which(data$ID==13)], # sample for men
grp1m = data$Women_m_meta[which(data$ID==13)], # mean of women
grp1sd = data$Women_SD_meta[which(data$ID==13)], # standard deviation of women
grp1n = data$Women_n_meta[which(data$ID==13)], # sample size for women
es.type = "g",
study = "NIH/RPG"))
##
## NIH/RPG (n=153167)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -5.1298
## Standard Error: 0.0108
## Variance: 0.0001
## Lower CI: -5.1510
## Upper CI: -5.1087
## Weight: 8567.9492
############################# AMOUNT AWARDED ########################
#means and sds were estimated using medians and IQRs using Abbas et al. online calculator
a8<- esc_mean_sd(grp2m = 4333.33, # mean of men
grp2sd = 1601.94, # standard deviation of men
grp2n = 19, # sample for men
grp1m = 3366.67, # mean of women
grp1sd = 2291.5, # standard deviation of women
grp1n = 23, # sample size for women
es.type = "g",
study = "Gordon et al. (2009)") # convert to SMD; use "g" for Hedges' g
## These are numbers reported in meta-analysis supplement, I don't know how these numbers were found because I used the same estimation procedure (Wan et al.)
esc_mean_sd(grp2m = 6224, # mean of men
grp2sd = 2417, # standard deviation of men
grp2n = 19, # sample for men
grp1m = 3734, # mean of women
grp1sd = 2695, # standard deviation of women
grp1n = 23, # sample size for women
es.type = "g")
##
## Effect Size Calculation for Meta Analysis
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.9493
## Standard Error: 0.3275
## Variance: 0.1073
## Lower CI: -1.5911
## Upper CI: -0.3074
## Weight: 9.3237
#################### AMOUNT REQUESTED ###################
esc_mean_sd(grp2m = 4166.67, # mean of men
grp2sd = 2043.91, # standard deviation of men
grp2n = 25, # sample for men
grp1m = 3483.33, # mean of women
grp1sd = 2232, # standard deviation of women
grp1n = 39, # sample size for women
es.type = "g") # convert to SMD; use "g" for Hedges' g
##
## Effect Size Calculation for Meta Analysis
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.3124
## Standard Error: 0.2577
## Variance: 0.0664
## Lower CI: -0.8175
## Upper CI: 0.1928
## Weight: 15.0552
################ META ANALYSIS ###############
(b12<- esc_mean_sd(grp2m = data$Men_m_meta[which(data$ID==4)], # mean of men
grp2sd = data$Men_SD_meta[which(data$ID==4)], # standard deviation of men
grp2n = data$Men_n_meta[which(data$ID==4)], # sample for men
grp1m = data$Women_m_meta[which(data$ID==4)], # mean of women
grp1sd = data$Women_SD_meta[which(data$ID==4)], # standard deviation of women
grp1n = data$Women_n_meta[which(data$ID==4)], # sample size for women
es.type = "g",
study = "Gordon et al. (2009)"))
##
## Gordon et al. (2009) (n=42)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.9493
## Standard Error: 0.3275
## Variance: 0.1073
## Lower CI: -1.5911
## Upper CI: -0.3074
## Weight: 9.3237
(b13<- esc_mean_sd(grp2m = data$Men_m_meta[which(data$ID==9)], # mean of men
grp2sd = data$Men_SD_meta[which(data$ID==9)], # standard deviation of men
grp2n = data$Men_n_meta[which(data$ID==9)], # sample for men
grp1m = data$Women_m_meta[which(data$ID==9)], # mean of women
grp1sd = data$Women_SD_meta[which(data$ID==9)], # standard deviation of women
grp1n = data$Women_n_meta[which(data$ID==9)], # sample size for women
es.type = "g",
study = "Lee & Bozeman (2005)"))
##
## Lee & Bozeman (2005) (n=338)
##
## Conversion: mean and sd to effect size Hedges' g
## Effect Size: -0.2534
## Standard Error: 0.1725
## Variance: 0.0297
## Lower CI: -0.5915
## Upper CI: 0.0846
## Weight: 33.6196
data$Total_n<- data$Men_n + data$Women_n
data$Total_n_meta<- data$Men_n_meta + data$Women_n_meta
library(reshape2)
library(dplyr)
library(esc)
recalc_effectsizes<- combine_esc(a1, a2, a3, a4, a5, a6, a7, a8)
recalc_effectsizes$Type<- "Recalculated"
meta_effectsizes<- combine_esc(b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13)
meta_effectsizes$Type<- "Meta Analysis"
data.new<- rbind(recalc_effectsizes, meta_effectsizes)
data.new$Type<- as.factor(data.new$Type)
library(ggplot2)
(effect.plot<- ggplot(data.new, aes(y=study, x=es, color=Type,
xmin=ci.lo,
xmax=ci.hi)) + xlim(-5.17, .15)+
geom_pointrange(aes(color=Type), position=position_dodge(width=1), size = .1) + geom_vline(xintercept=0, color='black', linetype='dashed', alpha=.8) + geom_vline(xintercept=-2.28, color='black', alpha=.8) + geom_linerange(position=position_dodge(width = 1)) + xlab("Effect Size (95% CI)") + ylab("Study") +
ggtitle("Comparison of Effect Sizes"))
ggsave("effectComparison.jpg", effect.plot, height=10, width=15)
data.new.win <- data.new %>%
dplyr::filter(study != "NIH/RPG") # NIH is such an extreme outlier in terms of both effect size and sample size that it's harder to see small differences in the other studies because the range is so large, so I created dataset without NIH data
(sample.effect.plot<- ggplot(data.new.win, aes(es, sample.size)) + geom_point(color = "darkblue") + facet_grid(. ~ Type) + ggtitle("Sample Size by Effect Size") + xlim(-1, 0) +xlab("Effect Size") + ylab("Sample Size") + geom_vline(xintercept=0, color='black', linetype='dashed', alpha=.8))
ggsave("sampleEffect.jpg", sample.effect.plot, height=10, width=15)
data.lim<- data %>%
select(Study, Fit, ES_converted, ES_meta, Total_n, Total_n_meta)
library(tidyr) #reshaping data
##
## Attaching package: 'tidyr'
## The following object is masked from 'package:reshape2':
##
## smiths
long_df <- pivot_longer(data.lim, cols = starts_with("Total_n"), names_to = "Type",
values_to = "Total_n")
long_df <- long_df %>%
mutate(Type = recode(Type, Total_n_meta = 'Meta Analysis', Total_n = 'Recalculated'))
long_df_es<- pivot_longer(data.lim, cols = starts_with("ES"), names_to = "Type",
values_to = "ES")
long_df_es <- long_df_es %>%
mutate(Type = recode(Type, ES_meta = 'Meta Analysis', ES_converted = 'Recalculated'))
long_df$ES<- long_df_es$ES
# Make a four-panel plot that shows how your alignment coding from #1 is related to sample sizes and effect sizes, for both your analysis of the primary studies and the meta-analysis.
z1<- ggplot(long_df, aes(ES, Fit)) + geom_point(color = "darkblue") + facet_grid(. ~ Type) + ggtitle("Study Alignment, Sample Size, and Effect Size") + xlim(-1, 0) + ylim(0, 4) +xlab("Effect Size") + ylab("Alignment") + geom_vline(xintercept=0, color='black', linetype='dashed', alpha=.8)
z2<- ggplot(long_df, aes(Total_n, Fit)) + geom_point(color = "darkblue") + facet_grid(. ~ Type) + xlim(0, 20000) + ylim(0, 4) +xlab("Sample Size") + ylab("Alignment")
library(gridExtra)
##
## Attaching package: 'gridExtra'
## The following object is masked from 'package:dplyr':
##
## combine
fig4<- grid.arrange(z1, z2, nrow=2)
## Warning: Removed 6 rows containing missing values or values outside the scale range
## (`geom_point()`).
## Warning: Removed 3 rows containing missing values or values outside the scale range
## (`geom_point()`).
ggsave("fig4.jpg", fig4, height=10, width=15)
(sampsize<- qplot(x = data$Total_n, y = data$Total_n_meta, main = "Sample Size Comparison", xlab = "Recalculated Sample Size", ylab = "Meta-Analytic Sample Size") + xlim(0, 20000) + ylim(0, 20000))
## Warning: `qplot()` was deprecated in ggplot2 3.4.0.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
## Warning: Removed 2 rows containing missing values or values outside the scale range
## (`geom_point()`).
ggsave("samplesize.jpg", sampsize, height=10, width=15)
## Warning: Removed 2 rows containing missing values or values outside the scale range
## (`geom_point()`).
ggplot(data.new, aes(es, se)) + geom_point(color = "darkblue") + facet_grid(. ~ Type) + ggtitle("Sample Size by Effect Size") + xlim(-5.5, .1) +xlab("Effect Size") + ylab("Standard Error") + geom_vline(xintercept=0, color='black', linetype='dashed', alpha=.8)