In research, especially in medical research, we describe characteristics of our study populations through Table 1. Table 1 contains information about the mean for continue/scale variable, and proportion for a categorical variable. For example, we say that the mean of systolic blood pressure in our study population is 145 mmHg, or 30% of participants are smokers. Since is called Table 1, means that is the first table in the manuscript.

To create the Table 1 sometimes it can be very time-consuming. Imagine if we have 10 variables (e.g. age, gender.. etc) for 3 groups, and for each variable we compute mean (standard deviation) and a number of participants (proportion); in the end, we have to fill 60 numbers in the table. Moreover, we usually export the table from R to Microsoft Word, and we can be prone to making mistakes if we’re copy/pasting. Therefore, I did a search to find a simple and comprehensive way to make Table 1 with R. I found two very interesting packages named “Tableone” and “ReporteRs”. The TableOne package is created by Kazuki Yoshida and Justin Bohn and is used to create the Table 1 in R. The ReporteRs package is created by David Gohel and in this post I use for exporting Table from R to Microsoft Word.

Create Table 1

I simulated a dataset by using functions rnorm() and sample() . You can download this simulated data set on you desktop to replicate this post. To learn how to upload your dataset into R read this post.

dt Age Gender Cholesterol SystolicBP BMI Smoking Education 1 67.9 Female 236.4 129.8 26.4 Yes High 2 54.8 Female 256.3 133.4 28.4 No Medium 3 68.4 Male 198.7 158.5 24.1 Yes High 4 67.9 Male 205.0 136.0 19.9 No Low 5 60.9 Male 207.7 145.4 26.7 No Medium 6 44.9 Female 222.5 130.6 30.6 No Low

Now I will use the package TableOne to create the Table 1. First I will load the package and then will create the list of variables which I want to place on Table 1. Secondly, I will define the categorical variables.