Investigating intelligence measures in relation to number of children

library(TwoSampleMR)
## TwoSampleMR version 0.5.6 
## [>] New: Option to use non-European LD reference panels for clumping etc
## [>] Some studies temporarily quarantined to verify effect allele
## [>] See news(package='TwoSampleMR') and https://gwas.mrcieu.ac.uk for further details

Cognitive performance

d <- make_dat("ebi-a-GCST006572", "ieu-b-4760")
## API: public: http://gwas-api.mrcieu.ac.uk/
## Extracting data for 147 SNP(s) from 1 GWAS(s)
## Finding proxies for 12 SNPs in outcome ieu-b-4760
## Extracting data for 12 SNP(s) from 1 GWAS(s)
## Harmonising Cognitive performance || id:ebi-a-GCST006572 (ebi-a-GCST006572) and Number of children || id:ieu-b-4760 (ieu-b-4760)
d_mr<-mr(d)
## Analysing 'ebi-a-GCST006572' on 'ieu-b-4760'
d_mr
##        id.exposure id.outcome                             outcome
## 1 ebi-a-GCST006572 ieu-b-4760 Number of children || id:ieu-b-4760
## 2 ebi-a-GCST006572 ieu-b-4760 Number of children || id:ieu-b-4760
## 3 ebi-a-GCST006572 ieu-b-4760 Number of children || id:ieu-b-4760
## 4 ebi-a-GCST006572 ieu-b-4760 Number of children || id:ieu-b-4760
## 5 ebi-a-GCST006572 ieu-b-4760 Number of children || id:ieu-b-4760
##                                       exposure                    method nsnp
## 1 Cognitive performance || id:ebi-a-GCST006572                  MR Egger  143
## 2 Cognitive performance || id:ebi-a-GCST006572           Weighted median  143
## 3 Cognitive performance || id:ebi-a-GCST006572 Inverse variance weighted  143
## 4 Cognitive performance || id:ebi-a-GCST006572               Simple mode  143
## 5 Cognitive performance || id:ebi-a-GCST006572             Weighted mode  143
##             b         se         pval
## 1 -0.21068070 0.06250972 9.686459e-04
## 2 -0.07968675 0.01471697 6.141966e-08
## 3 -0.08344897 0.01410907 3.327572e-09
## 4 -0.02062907 0.05157724 6.897836e-01
## 5 -0.02302757 0.05218323 6.596793e-01
mr_scatter_plot(d_mr,d)
## $`ebi-a-GCST006572.ieu-b-4760`

## 
## attr(,"split_type")
## [1] "data.frame"
## attr(,"split_labels")
##        id.exposure id.outcome
## 1 ebi-a-GCST006572 ieu-b-4760
d <- make_dat("ieu-b-4760", "ebi-a-GCST006572")
## Extracting data for 9 SNP(s) from 1 GWAS(s)
## Finding proxies for 2 SNPs in outcome ebi-a-GCST006572
## Extracting data for 2 SNP(s) from 1 GWAS(s)
## Harmonising Number of children || id:ieu-b-4760 (ieu-b-4760) and Cognitive performance || id:ebi-a-GCST006572 (ebi-a-GCST006572)
d_mr<-mr(d)
## Analysing 'ieu-b-4760' on 'ebi-a-GCST006572'
d_mr
##   id.exposure       id.outcome                                      outcome
## 1  ieu-b-4760 ebi-a-GCST006572 Cognitive performance || id:ebi-a-GCST006572
## 2  ieu-b-4760 ebi-a-GCST006572 Cognitive performance || id:ebi-a-GCST006572
## 3  ieu-b-4760 ebi-a-GCST006572 Cognitive performance || id:ebi-a-GCST006572
## 4  ieu-b-4760 ebi-a-GCST006572 Cognitive performance || id:ebi-a-GCST006572
## 5  ieu-b-4760 ebi-a-GCST006572 Cognitive performance || id:ebi-a-GCST006572
##                              exposure                    method nsnp          b
## 1 Number of children || id:ieu-b-4760                  MR Egger    7  0.7967442
## 2 Number of children || id:ieu-b-4760           Weighted median    7 -0.2944953
## 3 Number of children || id:ieu-b-4760 Inverse variance weighted    7 -0.4698843
## 4 Number of children || id:ieu-b-4760               Simple mode    7 -0.2854266
## 5 Number of children || id:ieu-b-4760             Weighted mode    7 -0.3185923
##          se        pval
## 1 1.0946133 0.499331568
## 2 0.1095479 0.007182144
## 3 0.2046147 0.021651012
## 4 0.1281075 0.067448972
## 5 0.1160015 0.033448598
mr_scatter_plot(d_mr,d)
## $`ieu-b-4760.ebi-a-GCST006572`

## 
## attr(,"split_type")
## [1] "data.frame"
## attr(,"split_labels")
##   id.exposure       id.outcome
## 1  ieu-b-4760 ebi-a-GCST006572

Fluid intelligence score

d <- make_dat("ukb-b-5238", "ieu-b-4760")
## Extracting data for 79 SNP(s) from 1 GWAS(s)
## Finding proxies for 2 SNPs in outcome ieu-b-4760
## Extracting data for 2 SNP(s) from 1 GWAS(s)
## Harmonising Fluid intelligence score || id:ukb-b-5238 (ukb-b-5238) and Number of children || id:ieu-b-4760 (ieu-b-4760)
## Removing the following SNPs for incompatible alleles:
## rs36143444
d_mr<-mr(d)
## Analysing 'ukb-b-5238' on 'ieu-b-4760'
d_mr
##   id.exposure id.outcome                             outcome
## 1  ukb-b-5238 ieu-b-4760 Number of children || id:ieu-b-4760
## 2  ukb-b-5238 ieu-b-4760 Number of children || id:ieu-b-4760
## 3  ukb-b-5238 ieu-b-4760 Number of children || id:ieu-b-4760
## 4  ukb-b-5238 ieu-b-4760 Number of children || id:ieu-b-4760
## 5  ukb-b-5238 ieu-b-4760 Number of children || id:ieu-b-4760
##                                    exposure                    method nsnp
## 1 Fluid intelligence score || id:ukb-b-5238                  MR Egger   78
## 2 Fluid intelligence score || id:ukb-b-5238           Weighted median   78
## 3 Fluid intelligence score || id:ukb-b-5238 Inverse variance weighted   78
## 4 Fluid intelligence score || id:ukb-b-5238               Simple mode   78
## 5 Fluid intelligence score || id:ukb-b-5238             Weighted mode   78
##             b          se         pval
## 1 -0.05140014 0.036089787 1.584732e-01
## 2 -0.03757126 0.008026460 2.855825e-06
## 3 -0.03589954 0.007826199 4.494492e-06
## 4 -0.05453543 0.022989275 2.017937e-02
## 5 -0.04283689 0.022531541 6.101783e-02
mr_scatter_plot(d_mr,d)
## $`ukb-b-5238.ieu-b-4760`

## 
## attr(,"split_type")
## [1] "data.frame"
## attr(,"split_labels")
##   id.exposure id.outcome
## 1  ukb-b-5238 ieu-b-4760
d <- make_dat("ieu-b-4760", "ukb-b-5238")
## Extracting data for 9 SNP(s) from 1 GWAS(s)
## Finding proxies for 1 SNPs in outcome ukb-b-5238
## Extracting data for 1 SNP(s) from 1 GWAS(s)
## Harmonising Number of children || id:ieu-b-4760 (ieu-b-4760) and Fluid intelligence score || id:ukb-b-5238 (ukb-b-5238)
d_mr<-mr(d)
## Analysing 'ieu-b-4760' on 'ukb-b-5238'
d_mr
##   id.exposure id.outcome                                   outcome
## 1  ieu-b-4760 ukb-b-5238 Fluid intelligence score || id:ukb-b-5238
## 2  ieu-b-4760 ukb-b-5238 Fluid intelligence score || id:ukb-b-5238
## 3  ieu-b-4760 ukb-b-5238 Fluid intelligence score || id:ukb-b-5238
## 4  ieu-b-4760 ukb-b-5238 Fluid intelligence score || id:ukb-b-5238
## 5  ieu-b-4760 ukb-b-5238 Fluid intelligence score || id:ukb-b-5238
##                              exposure                    method nsnp          b
## 1 Number of children || id:ieu-b-4760                  MR Egger    8  3.5145760
## 2 Number of children || id:ieu-b-4760           Weighted median    8 -0.4975601
## 3 Number of children || id:ieu-b-4760 Inverse variance weighted    8 -1.1607860
## 4 Number of children || id:ieu-b-4760               Simple mode    8 -0.4993220
## 5 Number of children || id:ieu-b-4760             Weighted mode    8 -0.4993220
##          se       pval
## 1 2.0359480 0.13505112
## 2 0.2639570 0.05942919
## 3 0.4516494 0.01016679
## 4 0.2996371 0.13956904
## 5 0.2731421 0.11025738
mr_scatter_plot(d_mr,d)
## $`ieu-b-4760.ukb-b-5238`

## 
## attr(,"split_type")
## [1] "data.frame"
## attr(,"split_labels")
##   id.exposure id.outcome
## 1  ieu-b-4760 ukb-b-5238

Intelligence

d <- make_dat("ebi-a-GCST006250", "ieu-b-4760")
## Extracting data for 165 SNP(s) from 1 GWAS(s)
## Finding proxies for 12 SNPs in outcome ieu-b-4760
## Extracting data for 12 SNP(s) from 1 GWAS(s)
## Harmonising Intelligence || id:ebi-a-GCST006250 (ebi-a-GCST006250) and Number of children || id:ieu-b-4760 (ieu-b-4760)
d_mr<-mr(d)
## Analysing 'ebi-a-GCST006250' on 'ieu-b-4760'
d_mr
##        id.exposure id.outcome                             outcome
## 1 ebi-a-GCST006250 ieu-b-4760 Number of children || id:ieu-b-4760
## 2 ebi-a-GCST006250 ieu-b-4760 Number of children || id:ieu-b-4760
## 3 ebi-a-GCST006250 ieu-b-4760 Number of children || id:ieu-b-4760
## 4 ebi-a-GCST006250 ieu-b-4760 Number of children || id:ieu-b-4760
## 5 ebi-a-GCST006250 ieu-b-4760 Number of children || id:ieu-b-4760
##                              exposure                    method nsnp
## 1 Intelligence || id:ebi-a-GCST006250                  MR Egger  162
## 2 Intelligence || id:ebi-a-GCST006250           Weighted median  162
## 3 Intelligence || id:ebi-a-GCST006250 Inverse variance weighted  162
## 4 Intelligence || id:ebi-a-GCST006250               Simple mode  162
## 5 Intelligence || id:ebi-a-GCST006250             Weighted mode  162
##             b         se         pval
## 1 -0.08987827 0.06503381 1.688908e-01
## 2 -0.05420943 0.01444703 1.752271e-04
## 3 -0.07365768 0.01362467 6.437617e-08
## 4 -0.01800980 0.05397286 7.390533e-01
## 5 -0.02026256 0.05018067 6.869014e-01
mr_scatter_plot(d_mr,d)
## $`ebi-a-GCST006250.ieu-b-4760`

## 
## attr(,"split_type")
## [1] "data.frame"
## attr(,"split_labels")
##        id.exposure id.outcome
## 1 ebi-a-GCST006250 ieu-b-4760
d <- make_dat("ieu-b-4760", "ebi-a-GCST006250")
## Extracting data for 9 SNP(s) from 1 GWAS(s)
## Finding proxies for 2 SNPs in outcome ebi-a-GCST006250
## Extracting data for 2 SNP(s) from 1 GWAS(s)
## Harmonising Number of children || id:ieu-b-4760 (ieu-b-4760) and Intelligence || id:ebi-a-GCST006250 (ebi-a-GCST006250)
d_mr<-mr(d)
## Analysing 'ieu-b-4760' on 'ebi-a-GCST006250'
d_mr
##   id.exposure       id.outcome                             outcome
## 1  ieu-b-4760 ebi-a-GCST006250 Intelligence || id:ebi-a-GCST006250
## 2  ieu-b-4760 ebi-a-GCST006250 Intelligence || id:ebi-a-GCST006250
## 3  ieu-b-4760 ebi-a-GCST006250 Intelligence || id:ebi-a-GCST006250
## 4  ieu-b-4760 ebi-a-GCST006250 Intelligence || id:ebi-a-GCST006250
## 5  ieu-b-4760 ebi-a-GCST006250 Intelligence || id:ebi-a-GCST006250
##                              exposure                    method nsnp          b
## 1 Number of children || id:ieu-b-4760                  MR Egger    7  0.9482297
## 2 Number of children || id:ieu-b-4760           Weighted median    7 -0.3353152
## 3 Number of children || id:ieu-b-4760 Inverse variance weighted    7 -0.4949132
## 4 Number of children || id:ieu-b-4760               Simple mode    7 -0.3665867
## 5 Number of children || id:ieu-b-4760             Weighted mode    7 -0.3363260
##          se        pval
## 1 1.0200130 0.395233008
## 2 0.1052484 0.001442834
## 3 0.1997822 0.013239425
## 4 0.1181668 0.021055084
## 5 0.1064221 0.019557545
mr_scatter_plot(d_mr,d)
## $`ieu-b-4760.ebi-a-GCST006250`

## 
## attr(,"split_type")
## [1] "data.frame"
## attr(,"split_labels")
##   id.exposure       id.outcome
## 1  ieu-b-4760 ebi-a-GCST006250

For all intelligence measures there is a negative effect on number of children.