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'

Original Study Effect Size Calculation

Zhou et al. 2018

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

Tamblyn et al. (2018)

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

Head et al. (2013)

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

Steinþórsdóttir et al. (2020): UI Research Fund

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

Steinþórsdóttir et al. (2020): IRF Research Fund

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

Swiss NSF Project

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

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

Gordon

############################# 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

Lee and Bozeman

(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

Analysis

data$Total_n<- data$Men_n + data$Women_n
data$Total_n_meta<- data$Men_n_meta + data$Women_n_meta

Effect Size Comparison

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)

Sample size versus effect size

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)

Study Alignment, Sample Size, and Effect Size

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)

Sample Size Comparison

(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()`).

Effect Size and Standard Error

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)