# .

In research, especially in medical research, we describe characteristics of our study populations through Table 1. The Table 1 contain information about the mean for continue/scale variable, and proportion for 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 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.

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 <- read.csv(file.choose(), header=TRUE, sep=",") ```

Load the package necessary for making Table 1:
```#Load package library(tableone) #Create a variable list which we want in Table 1 listVars <- c("Age", "Gender", "Cholesterol", "SystolicBP", "BMI", "Smoking", "Education") #Define categorical variables catVars <- c("Gender","Smoking","Education") ```

My first interest is to make the Table 1 for total population.
``` #Total Population table1 <- CreateTableOne(vars = listVars, data = dt, factorVars = catVars) table1```

But, often I am interested to create Table 1 for men and women and to compare their means and proportions. To compute this I run the code below.

```# Removing Gender from list of variables listVar <- c("Age", "Cholesterol", "SystolicBP", "BMI", "Smoking", "Education") table1 <- CreateTableOne(listVars, dt, catVars, strata = c("Gender")) table1```

You can read the original post and more at DataScience+

Views: 763

Tags: r, rstats

Comment