Hormonal Contraception and Sexuality: Causal Effects, Unobserved Selection, or Reverse Causality?

Supplementary Website

Laura J. Botzet, Tanja M. Gerlach, Julie C. Driebe, Lars Penke, and Ruben C. Arslan

# bibliography: packrat_bibliography.bibtex
source("0_helpers.R")

We used these helper functions.

  1. First exclusion criteria were applied.
  2. Then data was processed.
  3. Some descriptives and a codebook can be found here.
  4. All analyses of selection effects are available here.
  5. Here are the analyses of effects of contraceptive use and congruent contraceptive use including controlled and uncontrolled models. In additional robustness analyses we compared only women using oral hormonal contraceptives with normally cycling women. For both outcomes frequency of vaginal intercourse and masturbation frequency we computed differences in average marginal effects.
  6. In a last step, sensitivity of effects to unobserved confounders was estimated.
  7. Click here for all plots of the manuscript.

Here are further information about the factor relationship duration.

Effects Size Estimates and 90% HDIs of Hormonal Contraceptives on Outcomes Based on Uncontrolled and Controlled Models.
Note. Thick dotted lines indicate ROPEs for outcomes, thin dotted lines indicate zero. Blue indicates that the 90% HDI overlapped with the ROPE, red indicates that the 90% HDI was outside the ROPE.
HDIs = highest density intervals; ROPE = region of practical equivalence.

Abstract

Many of the women who take hormonal contraceptives discontinue because of unwanted side effects, including negative psychological effects. Yet scientific evidence of psychological effects is mixed and, partly because causal claims are often based on correlational data. In correlational studies, possible causal effects can be difficult to separate from selection effects, attrition effects, and reverse causality. Contraceptive use and, according to the congruency hypothesis, congruent contraceptive use (whether a woman’s current use/non-use of a hormonal contraceptive is congruent with her use/non-use at the time of meeting her partner) have both been thought to influence relationship quality and sexual functioning. In order to address potential issues of observed and unobserved selection effects in correlational data, we studied a sample of up to 1,179 women to investigate potential effects of contraceptive use and congruent contraceptive use on several measures of relationship quality and sexual functioning: perceived partner attractiveness, relationship satisfaction, sexual satisfaction, and diary measurements including libido, frequency of vaginal intercourse, and frequency of masturbation. No evidence for substantial effects was found except for a positive effect of hormonal contraceptives on frequency of vaginal intercourse and a negative effect of hormonal contraceptives on frequency of masturbation. These effects were robust to the inclusion of observed confounders, and their sensitivity to unobserved confounders was estimated. No support for the congruency hypothesis was found. Our correlational study was able to disentangle, to some extent, causal effects of hormonal contraceptives from selection effects by estimating the sensitivity of reported effects. To reconcile experimental and observational evidence on hormonal contraceptives, future research should scrutinize the role of unobserved selection effects, attrition effects, and reverse causality.

Session info

# Make packrat bibliography
# packrat_bibliography(overwrite_bib = TRUE, silent = TRUE)
# Turn the .R files into .Rmd files, turn those into .html, remove the .Rmd files
# spin_R_files_to_site_html()
sessionInfo()
## R version 4.1.1 (2021-08-10)
## Platform: x86_64-w64-mingw32/x64 (64-bit)
## Running under: Windows 10 x64 (build 19041)
## 
## Matrix products: default
## 
## locale:
## [1] LC_COLLATE=German_Germany.1252  LC_CTYPE=German_Germany.1252    LC_MONETARY=German_Germany.1252
## [4] LC_NUMERIC=C                    LC_TIME=German_Germany.1252    
## 
## attached base packages:
## [1] stats     graphics  grDevices datasets  utils     methods   base     
## 
## other attached packages:
##  [1] extrafont_0.17       dplyr_1.0.7          readr_2.0.1          tidyr_1.1.3          tibble_3.1.4        
##  [6] tidyverse_1.3.1      UpSetR_1.4.0         simstudy_0.2.1       StatMeasures_1.0     mice_3.13.0         
## [11] car_3.0-11           carData_3.0-4        psych_2.1.6          synthpop_1.6-0       Cairo_1.5-12.2      
## [16] jtools_2.1.4         sensemakr_0.1.3      ggpubr_0.4.0         RColorBrewer_1.1-2   rstan_2.21.2        
## [21] StanHeaders_2.21.0-7 cowplot_1.1.1        tidybayes_3.0.1      modelr_0.1.8         forcats_0.5.1       
## [26] purrr_0.3.4          magrittr_2.0.1       bayestestR_0.11.0    loo_2.4.1            brms_2.16.1         
## [31] Rcpp_1.0.7           apaTables_2.0.8      codebook_0.9.2       ggthemes_4.2.4       ggdist_3.0.0        
## [36] ggplot2_3.3.5        broom.mixed_0.2.7    broom_0.7.9          stringr_1.4.0        lubridate_1.7.10    
## [41] pander_0.6.4         formr_0.9.1          knitr_1.33           rmarkdown_2.10      
## 
## loaded via a namespace (and not attached):
##   [1] utf8_1.2.2           proto_1.0.0          tidyselect_1.1.1     lme4_1.1-27.1        htmlwidgets_1.5.3   
##   [6] ranger_0.13.1        grid_4.1.1           munsell_0.5.0        codetools_0.2-18     DT_0.19             
##  [11] miniUI_0.1.1.1       withr_2.4.2          Brobdingnag_1.2-6    colorspace_2.0-2     rstudioapi_0.13     
##  [16] stats4_4.1.1         ggsignif_0.6.2       Rttf2pt1_1.3.9       bayesplot_1.8.1      emmeans_1.6.3       
##  [21] mnormt_2.0.2         farver_2.1.0         datawizard_0.2.0.1   bridgesampling_1.1-2 coda_0.19-4         
##  [26] vctrs_0.3.8          generics_0.1.0       TH.data_1.0-10       xfun_0.25            randomForest_4.6-14 
##  [31] party_1.3-8          R6_2.5.1             markdown_1.1         gamm4_0.2-6          projpred_2.0.2      
##  [36] assertthat_0.2.1     promises_1.2.0.1     scales_1.1.1         multcomp_1.4-17      nnet_7.3-16         
##  [41] gtable_0.3.0         processx_3.5.2       sandwich_3.0-1       rlang_0.4.11         splines_4.1.1       
##  [46] extrafontdb_1.0      rstatix_0.7.0        checkmate_2.0.0      inline_0.3.19        yaml_2.2.1          
##  [51] reshape2_1.4.4       abind_1.4-5          threejs_0.3.3        crosstalk_1.1.1      backports_1.2.1     
##  [56] httpuv_1.6.2         rsconnect_0.8.24     tensorA_0.36.2       tools_4.1.1          ellipsis_0.3.2      
##  [61] Rsolnp_1.16          jquerylib_0.1.4      posterior_1.0.1      proxy_0.4-26         ggridges_0.5.3      
##  [66] plyr_1.8.6           base64enc_0.1-3      classInt_0.4-3       ps_1.6.0             prettyunits_1.1.1   
##  [71] rpart_4.1-15         zoo_1.8-9            haven_2.4.3          fs_1.5.0             data.table_1.14.0   
##  [76] openxlsx_4.2.4       reprex_2.0.1         colourpicker_1.1.0   tmvnsim_1.0-2        truncnorm_1.0-8     
##  [81] mvtnorm_1.1-2        matrixStats_0.60.1   hms_1.1.0            shinyjs_2.0.0        mime_0.11           
##  [86] evaluate_0.14        arrayhelpers_1.1-0   xtable_1.8-4         shinystan_2.5.0      rio_0.5.27          
##  [91] readxl_1.3.1         gridExtra_2.3        rstantools_2.1.1     compiler_4.1.1       KernSmooth_2.23-20  
##  [96] V8_3.4.2             crayon_1.4.1         minqa_1.2.4          htmltools_0.5.2      tzdb_0.1.2          
## [101] mgcv_1.8-36          later_1.3.0          libcoin_1.0-8        RcppParallel_5.1.4   DBI_1.1.1           
## [106] dbplyr_2.1.1         MASS_7.3-54          boot_1.3-28          Matrix_1.3-4         cli_3.0.1           
## [111] parallel_4.1.1       insight_0.14.4       igraph_1.2.6         pkgconfig_2.0.3      mipfp_3.2.1         
## [116] numDeriv_2016.8-1.1  coin_1.4-1           foreign_0.8-81       xml2_1.3.2           svUnit_1.0.6        
## [121] dygraphs_1.1.1.6     bslib_0.3.0          estimability_1.3     rvest_1.0.1          distributional_0.2.2
## [126] callr_3.7.0          digest_0.6.27        strucchange_1.5-2    cmm_0.12             cellranger_1.1.0    
## [131] curl_4.3.2           shiny_1.6.0          gtools_3.9.2         modeltools_0.2-23    nloptr_1.2.2.2      
## [136] lifecycle_1.0.0      nlme_3.1-152         jsonlite_1.7.2       fansi_0.5.0          labelled_2.8.0      
## [141] pillar_1.6.2         lattice_0.20-44      httr_1.4.2           fastmap_1.1.0        pkgbuild_1.2.0      
## [146] survival_3.2-13      glue_1.4.2           xts_0.12.1           zip_2.2.0            shinythemes_1.2.0   
## [151] class_7.3-19         stringi_1.7.4        sass_0.4.0.9000      polspline_1.1.19     renv_0.14.0         
## [156] e1071_1.7-8
LS0tDQpwYWdldGl0bGU6ICJFZmZlY3RzIG9mIENvbnRyYWNlcHRpb24iDQpjc2w6IGFwYS1jdXN0b20tbm8taXNzdWUuY3NsDQpub2NpdGU6IHwNCiAgICBAUiBAcGFja3JhdCBAcm1hcmtkb3duIEBrbml0ciBAZm9ybXIgQHBhbmRlciBAbHVicmlkYXRlIEBzdHJpbmdyIEBicm9vbSBAZWZmZWN0cyBAZ2dwbG90MiBAdGlkeXIgQHN2Z2xpdGUgQGRwbHlyIEByZXNoYXBlMiBAbG1lclRlc3QgQGRldnRvb2xzIEBmb3JtYXRSIEBsYXp5ZXZhbCBAc2NhbGVzIEBjYXIgQHhsc3ggQGxtZTQNCi0tLQ0KDQojIEhvcm1vbmFsIENvbnRyYWNlcHRpb24gYW5kIFNleHVhbGl0eTogQ2F1c2FsIEVmZmVjdHMsIFVub2JzZXJ2ZWQgU2VsZWN0aW9uLCBvciBSZXZlcnNlIENhdXNhbGl0eT8gey50YWJzZXQgLnRhYnNldC1zdGlja3l9DQpfX1N1cHBsZW1lbnRhcnkgV2Vic2l0ZV9fDQoNCkxhdXJhIEouIEJvdHpldCwgVGFuamEgTS4gR2VybGFjaCwgSnVsaWUgQy4gRHJpZWJlLCBMYXJzIFBlbmtlLCBhbmQgUnViZW4gQy4gQXJzbGFuIA0KDQoNCmBgYHtyIG1lc3NhZ2U9RkFMU0UsIHdhcm5pbmc9RkFMU0V9DQojIGJpYmxpb2dyYXBoeTogcGFja3JhdF9iaWJsaW9ncmFwaHkuYmlidGV4DQpzb3VyY2UoIjBfaGVscGVycy5SIikNCmBgYA0KDQo8ZGl2IGNsYXNzPSJyb3ciPg0KDQo8ZGl2IGNsYXNzPSJjb2wtbWQtNSI+DQpXZSB1c2VkIHRoZXNlIFtoZWxwZXIgZnVuY3Rpb25zXSgwX2hlbHBlcnMuUikuDQoNCjEuIEZpcnN0IFtleGNsdXNpb24gY3JpdGVyaWEgd2VyZSBhcHBsaWVkXSgxX2V4Y2x1c2lvbi5odG1sKS4NCjIuIFRoZW4gW2RhdGEgd2FzIHByb2Nlc3NlZF0oMl9kYXRhd3JhbmdsaW5nLmh0bWwpLg0KMy4gU29tZSBbZGVzY3JpcHRpdmVzXSgzX2Rlc2NyaXB0aXZlcy5odG1sKSBhbmQgYSBbY29kZWJvb2tdKDRfY29kZWJvb2suaHRtbCkgY2FuIGJlIGZvdW5kIGhlcmUuDQo0LiBBbGwgW2FuYWx5c2VzIG9mIHNlbGVjdGlvbiBlZmZlY3RzXSg1X2FuYWx5c2VzX3NlbGVjdGlvbi5odG1sKSBhcmUgYXZhaWxhYmxlIGhlcmUuDQo1LiBIZXJlIGFyZSB0aGUgW2FuYWx5c2VzIG9mIGVmZmVjdHMgb2YgY29udHJhY2VwdGl2ZSB1c2UgYW5kIGNvbmdydWVudCBjb250cmFjZXB0aXZlIHVzZV0oNl9hbmFseXNlc19lZmZlY3RzLmh0bWwpIGluY2x1ZGluZyBjb250cm9sbGVkIGFuZCB1bmNvbnRyb2xsZWQgbW9kZWxzLiBJbiBhZGRpdGlvbmFsIFtyb2J1c3RuZXNzIGFuYWx5c2VzXSgxNF9hbmFseXNlc19yb2J1c3QuaHRtbCkgd2UgY29tcGFyZWQgb25seSB3b21lbiB1c2luZyBvcmFsIGhvcm1vbmFsIGNvbnRyYWNlcHRpdmVzIHdpdGggbm9ybWFsbHkgY3ljbGluZyB3b21lbi4gRm9yIGJvdGggb3V0Y29tZXMgZnJlcXVlbmN5IG9mIHZhZ2luYWwgaW50ZXJjb3Vyc2UgYW5kIG1hc3R1cmJhdGlvbiBmcmVxdWVuY3kgd2UgY29tcHV0ZWQgW2RpZmZlcmVuY2VzIGluIGF2ZXJhZ2UgbWFyZ2luYWwgZWZmZWN0c10oMThfbWFyZ2luYWxfZWZmZWN0cy5odG1sKS4NCjYuIEluIGEgbGFzdCBzdGVwLCBbc2Vuc2l0aXZpdHkgb2YgZWZmZWN0cyB0byB1bm9ic2VydmVkIGNvbmZvdW5kZXJzXSg3X2FuYWx5c2VzX3NlbnNpdGl2aXR5Lmh0bWwpIHdhcyBlc3RpbWF0ZWQuDQo3LiBDbGljayBbaGVyZV0oOF9wbG90cy5odG1sKSBmb3IgYWxsIHBsb3RzIG9mIHRoZSBtYW51c2NyaXB0Lg0KDQpIZXJlIGFyZSBmdXJ0aGVyIGluZm9ybWF0aW9uIGFib3V0IHRoZSBbZmFjdG9yIHJlbGF0aW9uc2hpcCBkdXJhdGlvbl0oOTlfcmVsYXRpb25zaGlwX2R1cmF0aW9uLmh0bWwpLg0KDQo8L2Rpdj4NCg0KPGRpdiBjbGFzcz0iY29sLW1kLTYiPg0KIVtFZmZlY3RzIFNpemUgRXN0aW1hdGVzIGFuZCA5MCUgSERJcyBvZiBIb3Jtb25hbCBDb250cmFjZXB0aXZlcyBvbiBPdXRjb21lcyBCYXNlZCBvbiBVbmNvbnRyb2xsZWQgYW5kIENvbnRyb2xsZWQgTW9kZWxzLjxicj48aT5Ob3RlLjwvaT4gVGhpY2sgZG90dGVkIGxpbmVzIGluZGljYXRlIFJPUEVzIGZvciBvdXRjb21lcywgdGhpbiBkb3R0ZWQgbGluZXMgaW5kaWNhdGUgemVyby4gQmx1ZSBpbmRpY2F0ZXMgdGhhdCB0aGUgOTAlIEhESSBvdmVybGFwcGVkIHdpdGggdGhlIFJPUEUsIHJlZCBpbmRpY2F0ZXMgdGhhdCB0aGUgOTAlIEhESSB3YXMgb3V0c2lkZSB0aGUgUk9QRS48YnI+SERJcyA9IGhpZ2hlc3QgZGVuc2l0eSBpbnRlcnZhbHM7IFJPUEUgPSByZWdpb24gb2YgcHJhY3RpY2FsIGVxdWl2YWxlbmNlLl0ob3V0cHV0LmdpZikNCjwvZGl2Pg0KDQo8L2Rpdj4NCjxkaXYgY2xhc3M9ImNsZWFyZml4Ij48L2Rpdj4NCg0KIyMjIHsudGFic2V0fQ0KIyMjIyBBYnN0cmFjdA0KTWFueSBvZiB0aGUgd29tZW4gd2hvIHRha2UgaG9ybW9uYWwgY29udHJhY2VwdGl2ZXMgZGlzY29udGludWUgYmVjYXVzZSBvZiB1bndhbnRlZCBzaWRlIGVmZmVjdHMsIGluY2x1ZGluZyBuZWdhdGl2ZSBwc3ljaG9sb2dpY2FsIGVmZmVjdHMuIFlldCBzY2llbnRpZmljIGV2aWRlbmNlIG9mIHBzeWNob2xvZ2ljYWwgZWZmZWN0cyBpcyBtaXhlZCBhbmQsIHBhcnRseSBiZWNhdXNlIGNhdXNhbCBjbGFpbXMgYXJlIG9mdGVuIGJhc2VkIG9uIGNvcnJlbGF0aW9uYWwgZGF0YS4gSW4gY29ycmVsYXRpb25hbCBzdHVkaWVzLCBwb3NzaWJsZSBjYXVzYWwgZWZmZWN0cyBjYW4gYmUgZGlmZmljdWx0IHRvIHNlcGFyYXRlIGZyb20gc2VsZWN0aW9uIGVmZmVjdHMsIGF0dHJpdGlvbiBlZmZlY3RzLCBhbmQgcmV2ZXJzZSBjYXVzYWxpdHkuIENvbnRyYWNlcHRpdmUgdXNlIGFuZCwgYWNjb3JkaW5nIHRvIHRoZSBjb25ncnVlbmN5IGh5cG90aGVzaXMsIGNvbmdydWVudCBjb250cmFjZXB0aXZlIHVzZSAod2hldGhlciBhIHdvbWFu4oCZcyBjdXJyZW50IHVzZS9ub24tdXNlIG9mIGEgaG9ybW9uYWwgY29udHJhY2VwdGl2ZSBpcyBjb25ncnVlbnQgd2l0aCBoZXIgdXNlL25vbi11c2UgYXQgdGhlIHRpbWUgb2YgbWVldGluZyBoZXIgcGFydG5lcikgaGF2ZSBib3RoIGJlZW4gdGhvdWdodCB0byBpbmZsdWVuY2UgcmVsYXRpb25zaGlwIHF1YWxpdHkgYW5kIHNleHVhbCBmdW5jdGlvbmluZy4gSW4gb3JkZXIgdG8gYWRkcmVzcyBwb3RlbnRpYWwgaXNzdWVzIG9mIG9ic2VydmVkIGFuZCB1bm9ic2VydmVkIHNlbGVjdGlvbiBlZmZlY3RzIGluIGNvcnJlbGF0aW9uYWwgZGF0YSwgd2Ugc3R1ZGllZCBhIHNhbXBsZSBvZiB1cCB0byAxLDE3OSB3b21lbiB0byBpbnZlc3RpZ2F0ZSBwb3RlbnRpYWwgZWZmZWN0cyBvZiBjb250cmFjZXB0aXZlIHVzZSBhbmQgY29uZ3J1ZW50IGNvbnRyYWNlcHRpdmUgdXNlIG9uIHNldmVyYWwgbWVhc3VyZXMgb2YgcmVsYXRpb25zaGlwIHF1YWxpdHkgYW5kIHNleHVhbCBmdW5jdGlvbmluZzogcGVyY2VpdmVkIHBhcnRuZXIgYXR0cmFjdGl2ZW5lc3MsIHJlbGF0aW9uc2hpcCBzYXRpc2ZhY3Rpb24sIHNleHVhbCBzYXRpc2ZhY3Rpb24sIGFuZCBkaWFyeSBtZWFzdXJlbWVudHMgaW5jbHVkaW5nIGxpYmlkbywgZnJlcXVlbmN5IG9mIHZhZ2luYWwgaW50ZXJjb3Vyc2UsIGFuZCBmcmVxdWVuY3kgb2YgbWFzdHVyYmF0aW9uLiBObyBldmlkZW5jZSBmb3Igc3Vic3RhbnRpYWwgZWZmZWN0cyB3YXMgZm91bmQgZXhjZXB0IGZvciBhIHBvc2l0aXZlIGVmZmVjdCBvZiBob3Jtb25hbCBjb250cmFjZXB0aXZlcyBvbiBmcmVxdWVuY3kgb2YgdmFnaW5hbCBpbnRlcmNvdXJzZSBhbmQgYSBuZWdhdGl2ZSBlZmZlY3Qgb2YgaG9ybW9uYWwgY29udHJhY2VwdGl2ZXMgb24gZnJlcXVlbmN5IG9mIG1hc3R1cmJhdGlvbi4gVGhlc2UgZWZmZWN0cyB3ZXJlIHJvYnVzdCB0byB0aGUgaW5jbHVzaW9uIG9mIG9ic2VydmVkIGNvbmZvdW5kZXJzLCBhbmQgdGhlaXIgc2Vuc2l0aXZpdHkgdG8gdW5vYnNlcnZlZCBjb25mb3VuZGVycyB3YXMgZXN0aW1hdGVkLiBObyBzdXBwb3J0IGZvciB0aGUgY29uZ3J1ZW5jeSBoeXBvdGhlc2lzIHdhcyBmb3VuZC4gT3VyIGNvcnJlbGF0aW9uYWwgc3R1ZHkgd2FzIGFibGUgdG8gZGlzZW50YW5nbGUsIHRvIHNvbWUgZXh0ZW50LCBjYXVzYWwgZWZmZWN0cyBvZiBob3Jtb25hbCBjb250cmFjZXB0aXZlcyBmcm9tIHNlbGVjdGlvbiBlZmZlY3RzIGJ5IGVzdGltYXRpbmcgdGhlIHNlbnNpdGl2aXR5IG9mIHJlcG9ydGVkIGVmZmVjdHMuIFRvIHJlY29uY2lsZSBleHBlcmltZW50YWwgYW5kIG9ic2VydmF0aW9uYWwgZXZpZGVuY2Ugb24gaG9ybW9uYWwgY29udHJhY2VwdGl2ZXMsIGZ1dHVyZSByZXNlYXJjaCBzaG91bGQgc2NydXRpbml6ZSB0aGUgcm9sZSBvZiB1bm9ic2VydmVkIHNlbGVjdGlvbiBlZmZlY3RzLCBhdHRyaXRpb24gZWZmZWN0cywgYW5kIHJldmVyc2UgY2F1c2FsaXR5Lg0KDQojIyMjIFNlc3Npb24gaW5mbw0KYGBge3J9DQojIE1ha2UgcGFja3JhdCBiaWJsaW9ncmFwaHkNCiMgcGFja3JhdF9iaWJsaW9ncmFwaHkob3ZlcndyaXRlX2JpYiA9IFRSVUUsIHNpbGVudCA9IFRSVUUpDQojIFR1cm4gdGhlIC5SIGZpbGVzIGludG8gLlJtZCBmaWxlcywgdHVybiB0aG9zZSBpbnRvIC5odG1sLCByZW1vdmUgdGhlIC5SbWQgZmlsZXMNCiMgc3Bpbl9SX2ZpbGVzX3RvX3NpdGVfaHRtbCgpDQpzZXNzaW9uSW5mbygpDQpgYGANCg0K