How to Use the Table Function in R (With Examples)


The table() function in R can be used to quickly create frequency tables.

This tutorial provides examples of how to use this function with the following data frame in R:

#create data frame
df <- data.frame(player = c('AJ', 'Bob', 'Chad', 'Dan', 'Eric', 'Frank'),
                 position = c('A', 'B', 'B', 'B', 'B', 'A'),
                 points = c(1, 2, 2, 1, 0, 0))

#view data frame
df

  player position points
1     AJ        A      1
2    Bob        B      2
3   Chad        B      2
4    Dan        B      1
5   Eric        B      0
6  Frank        A      0

Example 1: Frequency Table for One Variable

The following code shows how to create a frequency table for the position variable in our data frame:

#calculate frequency table for position variable
table(df$position)

A B 
2 4

From the output we can observe:

  • 2 players in the data frame have a position of ‘A
  • 4 players in the data frame have a position of ‘B

Example 2: Frequency Table of Proportions for One Variable

The following code shows how to use prop.table() to create a frequency table of proportions for the position variable in our data frame:

#calculate frequency table of proportions for position variable
prop.table(table(df$position))

        A         B 
0.3333333 0.6666667

From the output we can observe:

  • 33.33% of players in the data frame have a position of ‘A
  • 66.67% of players in the data frame have a position of ‘B

Note that in a proportion table the sum of the proportions will always be equal to 1.

Example 3: Frequency Table for Two Variables

The following code shows how to create a frequency table for the position and points variable in our data frame:

#calculate frequency table for position and points variable
table(df$position, df$points)

    0 1 2
  A 1 1 0
  B 1 1 2

From the output we can observe:

  • 1 player in the data frame has a position of ‘A‘ and 0 points
  • 1 player in the data frame has a position of ‘A‘ and 1 point
  • 0 players in the data frame have a position of ‘A‘ and 2 points
  • 1 player in the data frame has a position of ‘B‘ and 0 points
  • 1 player in the data frame has a position of ‘B‘ and 1 point
  • 2 players in the data frame have a position of ‘B‘ and 2 points

Example 4: Frequency Table of Proportions for Two Variables

The following code shows how to create a frequency table of proportions for the position and points variable in our data frame:

#calculate frequency table of proportions for position and points variable
prop.table(table(df$position, df$points))

            0         1         2
  A 0.1666667 0.1666667 0.0000000
  B 0.1666667 0.1666667 0.3333333

From the output we can observe:

  • 16.67% of players in the data frame have a position of ‘A‘ and 0 points
  • 16.67% of players in the data frame have a position of ‘A‘ and 1 point
  • 0% of players in the data frame have a position of ‘A‘ and 2 points
  • 16.67% of players in the data frame have a position of ‘B‘ and 0 points
  • 16.67% of players in the data frame have a position of ‘B‘ and 1 point
  • 33.3% of players in the data frame have a position of ‘B‘ and 2 points

Note that we can also use the options() function to specify how many decimals to show in the proportion table:

#only display two decimal places
options(digits=2)

#calculate frequency table of proportions for position and points variable
prop.table(table(df$position, df$points))

       0    1    2
  A 0.17 0.17 0.00
  B 0.17 0.17 0.33

Additional Resources

How to Create Relative Frequency Tables in R
How to Create a Relative Frequency Histogram in R

Leave a Reply

Your email address will not be published.