Malcolm Barrett

PhD Student in Epidemiology

Selected Publications

in Obstetrics and Gynecology,2017

Recent Publications

More Publications

. Intrauterine Device Use and Cervical Cancer Risk: A Systematic Review and Meta-analysis. in Obstetrics and Gynecology, 2017.

Project PubMed

. Symptom Distress Among Diverse Patients Referred for Community-Based Palliative Care: Sociodemographic and Medical Correlates. in Journal of Pain and Symptom Management, 2017.

Project PubMed

. Race and Ethnicity Do Not Clinically Associate with Quality of Life Among Patients with Chronic Severe Pain in a Federally Qualified Health Center. in Pain Medicine, 2017.


Recent Posts

More Posts

The annual meeting of the Society for Epidemiologic Research (SER) took place June 18-21. The past two years, I’ve collected Twitter data (2018, 2019). The data were collected with the excellent rtweet package, and the data collection code was based on related code by Mike Kearney, the author of rtweet. Setup # for everything else :) library(tidyverse) # for tidy eval library(rlang) # for labeling tweets in plots library(ggrepel) # for network graphs library(ggraph) library(tidygraph) # for text analysis library(tidytext) Since the data were collected over several days, I’m going to read the saved data straight from GitHub.


I’m pleased to announce the CRAN release of partition 0.1.0. partition is a fast and flexible data reduction framework that minimizes information loss and creates interpretable clusters. partition uses agglomorative clustering: it starts from the ground up, matching pairs of variables and assessing the amount of information that would be explained by their reduction. If the information is above this user-specified threshold, the data is reduced. This type of reduction is particularly useful in very redundant data, such as high-resolution genetic data.


TL;DR: Why should I use here? The here package makes it easier to use sub-directories within projects It’s robust to other ways people open and run your code Like its base R cousin, file.path(), it writes paths safely across operating systems Like a lot of people, when I learned R, I was taught to put setwd() and rm(list = ls()) at the beginning of scripts. Getting rid of any leftovers in the environment and setting the working directory so I can use relative paths made sense to me.


Last week, I presented ggdag at JSM in Vancouver. As you can imagine, I had a lot of conversations with people about DAGs, confounding, colliders, and all the types of bias that can arise in research. One strange type of bias came up a couple of times that I don’t see discussed very often: measuring either the effect you are studying (x) or a variable along a confounding pathway (z) incorrectly can make it appear as if there is an interaction between x and z, even if there isn’t one.


I’m pleased to announce the release of ggdag 0.1.0 on CRAN! ggdag uses the powerful dagitty package to create and analyze structural causal models and plot them using ggplot2 and ggraph in a tidy, consistent, and easy manner. You can use dagitty objects directly in ggdag, but ggdag also includes wrappers to make DAGs using a more R-like syntax: # install.packages("ggdag") library(ggdag) dag <- dagify(y ~ x + z, x ~ z) %>% tidy_dagitty() dag ## # A tibble: 4 x 8 ## name x y direction to xend yend circular ## <chr> <dbl> <dbl> <fct> <chr> <dbl> <dbl> <lgl> ## 1 x 3.



R Packages

DAG analysis and visualization, visualization for meta-analyses, tools for causal inference, and more

Methods in Epidemiology

Understanding how bias affects results


Cervical cancer, cancer symptoms

Predicting Follow-Up Eye Care

What factors influence when a patient follows up for eye care?

Vision and Quality of Life

Humans are visual creatures. How does vision loss affect quality of life?


I went into epidemiology because I saw how many talented clinicians there were in community health that needed help with analysis. When the people we serve donate their time and data, quality study design and analysis is the best way to make good on our promises.

I can help with:

  • Study design
  • Analysis plans
  • Coding and modeling
  • Instruction in R and other statistical tools
  • Data visualization