How to Create Tables in R (9 Examples) | table() Function & Data Class (2024)

In this R programming tutorial you’ll learn how to create, manipulate, and plot table objects.

The content of the page is structured as follows:

1) Example Data

2) Example 1: Create Frequency Table

3) Example 2: Create Contingency Table

4) Example 3: Sort Frequency Table

5) Example 4: Change Names of Table

6) Example 5: Extract Subset of Table

7) Example 6: Create Proportions Table

8) Example 7: Draw Table in Barplot

9) Example 8: Convert Matrix to Table

10) Example 9: Check Class of Table Object

Note that this tutorial gives a brief overview on the usage of the table function in R. However, I have also published more detailed tutorials on the different topics shown in this tutorial. You may access these tutorials by clicking on the links within the corresponding sections.

Anyway, it’s time to dive into the programming part.

Example Data

The following data will be used as basem*nt for this R programming language tutorial:

data <- data.frame(x1 = rep(LETTERS[1:2], # Create example data frame each = 4), x2 = c(letters[1:3], letters[2:5], "b"))data # Print example data frame

How to Create Tables in R (9 Examples) | table() Function & Data Class (1)

Table 1 visualizes the output of the RStudio console and shows the structure of our exemplifying data – It is constituted of eight rows and two character columns.

Example 1: Create Frequency Table

This example shows how to make a frequency table in R.

For this task, we can apply the table() function to one of the columns of our example data frame:

The previous output shows the frequency counts of each value in the column x2. For instance, the letter a is contained once, and the letter b is contained three times.

Example 2: Create Contingency Table

The following R programming code explains how to make a contingency table, i.e. a table of multiple columns.

The following R code creates a two-way cross tabulation of our example data frame:

tab2 <- table(data) # Make contingency tabletab2 # Print contingency table# x2# x1 a b c d e# A 1 2 1 0 0# B 0 1 1 1 1

The previous output shows the frequency distribution among the two columns x1 and x2. For instance, the combination of A and a occurs once, and the combination of B and a appears not at all.

Example 3: Sort Frequency Table

This example explains how to order a table object.

For this example, we use the table object tab1 that we have created in Example 1 as basis.

We sort this table by applying the order function. Within the order function, we set the decreasing argument to be equal to TRUE, to show the values with the most occurrences first.

Have a look at the following R code:

tab3 <- tab1[order(tab1, decreasing = TRUE)] # Order tabletab3 # Print ordered table# b c a d e # 3 2 1 1 1

As you can see, the character b is shown first, since it occurs the most often in the data frame variable x2.

Example 4: Change Names of Table

In Example 4, I’ll demonstrate how to rename the elements of a table.

For this, we can apply the names and paste0 functions as illustrated in the following R code:

tab4 <- tab3 # Duplicate tablenames(tab4) <- paste0("x", 1:length(tab4)) # Change namestab4 # Print renamed table# x1 x2 x3 x4 x5 # 3 2 1 1 1

The previous output contains the same numeric values as the table that we have created in Example 3. However, the labels of those table cells have been changed.

Example 5: Extract Subset of Table

The code below shows how to return only a certain subset of a table object.

To achieve this, we use the table object tab1 that we have constructed in Example1 as basis. We can select a subset of this table object using a logical condition as shown below:

tab5 <- tab1[tab1 > 1] # Extract table subsettab5 # Print table subset# b c # 3 2

The previously shown table subset consists of all table elements that occur at least two times. All the other table elements have been removed.

Example 6: Create Proportions Table

In Example 6, I’ll explain how to create a proportions table (or probabilities).

For this task, we can apply the prop.table command to a table object (i.e. tab1) as illustrated in the following R syntax:

tab6 <- prop.table(tab1) # Make proportions tabletab6 # Print proportions table# a b c d e # 0.125 0.375 0.250 0.125 0.125

The previous output shows the proportions of each value in our data.

Example 7: Draw Table in Barplot

In Example 7, I’ll show how to plot a table object in a barchart.

To do this, we have to apply the barplot function to a table object:

barplot(tab1) # Draw table in plot

How to Create Tables in R (9 Examples) | table() Function & Data Class (2)

Figure 1 shows the output of the previous R code: A Base R bargraph showing the values in the table we have created in Example 1. The height of the bars corresponds to the occurrences of each value in our data set variable.

Example 8: Convert Matrix to Table

This example explains how to change the data type of a numeric matrix object to the table class.

For this example, we first have to create an exemplifying matrix:

mat <- matrix(1:12, ncol = 3) # Create example matrixmat # Print example matrix

How to Create Tables in R (9 Examples) | table() Function & Data Class (3)

As shown in Table 2, the previous R programming code has created a matrix object with four rows and three columns.

We can now use the as.table function to convert this matrix to the table class:

tab7 <- as.table(mat) # Convert matrix to tabletab7 # Print converted table# A B C# A 1 5 9# B 2 6 10# C 3 7 11# D 4 8 12

The previous output shows our new table object that we have created based on our input matrix.

Example 9: Check Class of Table Object

This example illustrates how to check whether a data object has the table class.

There are basically two alternatives on how to do this. Either, we can apply the class() function to return the class of a data object

class(tab7) # Return class of table# [1] "table"

…or we can apply the is.table function to return a logical indicator that shows whether our data object has the table class:

is.table(tab7) # Test if object is table# [1] TRUE

Both applications return the same result: The data object tab7 that we have created in Example 8 has the table class.

Video, Further Resources & Summary

In case you need further explanations on the examples of this tutorial, you might want to have a look at the following video on my YouTube channel. I’m showing the content of this article in the video.

The YouTube video will be added soon.

In addition, you may want to have a look at the other articles on my website. I have created a tutorial series that contains many additional instructions on how to use tables in R:

  • How to Create a Frequency Table
  • Contingency Table in R
  • prop.table Function in R
  • Weighted Frequency Table in R
  • Sort Table in R
  • Contingency Table Across Multiple Columns
  • Table by Group in R
  • Subset Table Object in R
  • Plot Table Object in R
  • Add Table to ggplot2 Plot
  • Print Table in R
  • Remove or Show NA Values in Table
  • How to Create a Pivot Table
  • Lookup Table in R
  • R Programming Examples

Summary: At this point of the article you should have learned how to apply the table command to calculate, construct, work, modify, and draw table objects in R programming. In case you have additional questions, don’t hesitate to tell me about it in the comments below.

4 Comments. Leave new

  • How to Create Tables in R (9 Examples) | table() Function & Data Class (4)

    ALI

    March 9, 2022 8:45 am

    Dear Joachim, Thanks for the great work!
    Could you please guide me on how to find the performance of the Bayesian Moving Average control chart using Posterior/prior distribution through ARL and SDRL as performance measures with the help of Monte Carlo Simulations?

    Reply
    • How to Create Tables in R (9 Examples) | table() Function & Data Class (5)

      Joachim

      March 10, 2022 8:24 am

      Hey Ali,

      Thank you for the kind comment! Unfortunately, I’m not an expert on this topic. However, I have recently created a Facebook discussion group where people can ask questions about R programming and statistics. Could you post your question there? This way, others can contribute/read as well: https://www.facebook.com/groups/statisticsglobe

      Regards,
      Joachim

      Reply
  • How to Create Tables in R (9 Examples) | table() Function & Data Class (6)

    Hussein

    March 26, 2023 1:40 pm

    thanks that was very useful

    Reply
    • How to Create Tables in R (9 Examples) | table() Function & Data Class (7)

      Matthias (Statistics Globe)

      March 27, 2023 10:26 am

      You’re welcome Hussein! Thanks for the feedback!

      Regards,
      Matthias

      Reply

Leave a Reply

How to Create Tables in R (9 Examples) | table() Function & Data Class (2024)

References

Top Articles
MA v. Karen Read: Killer or Cover-Up Murder Trial
What Will Become of American Civilization?
Villarica Pawnshop Forex Rate
Krdo Weather Closures
Nancy Caroline (Kindley) Walker - Goodwin Funeral Home
A Man Called Otto Showtimes Near Fort Collins
Www.myschedule.kp.org
Gwenson Mallory Crutcher
Member Handbook 2021 | Ohio Medicaid Caresource | Member Handbook
Chukchansi Webcam
Aces Charting Ehr
manhattan cars & trucks - by owner - craigslist
John Chiv Words Worth
How To Get Father, Son or Grandmother Tokens in Warframe?
Uhcs Patient Wallet
Bbaexclusive
Summoner Weapons Terraria
Violent Night Showtimes Near The Riviera Cinema
Soul Attraction Rs3
Ksat Doppler Radar
Dovob222
What is IXL and How Does it Work?
New Jersey Map | Map of New Jersey | NJ Map
James And Lisa Goy Obituary
Highplainsobserverperryton
Naydenov Gymnastics Reviews
Kagtwt
Hendricks County Mugshots Busted Newspaper
Ark Black Pearls Gfi
SuperLotto Plus | California State Lottery
Sona Twu
25+ Twitter Header Templates & Design Tips - Venngage
Reasonabiu
Kaelis Dahlias
Runescape Abyssal Beast
Walgreens Pharmacy On Jennings Station Road
Unveiling AnonIB: The Controversial Online Haven for Explicit Images - The Technology For The Next Generation.
Educational Outfitters Denver
Leaked Full Video Of Tiktok Star The Real Cacagirl AKA Realcacagirl - Cara Mesin
How To Get Stone Can In Merge Mansion 2022
Tires Shop Santoyo
Bfri Forum
Patriot Ledger Obits Today
Craigslist Ct Bridgeport
Thotsbay New Site
Ups First And Nees
Atlanta Farm And Garden By Owner
Drew Gulliver Bj
Family Court Forms | Maricopa County Superior Court
Closest Asian Supermarket
Rexford Tucker Pritchett
Pamibaby Telegram
Latest Posts
Article information

Author: Kareem Mueller DO

Last Updated:

Views: 5476

Rating: 4.6 / 5 (46 voted)

Reviews: 85% of readers found this page helpful

Author information

Name: Kareem Mueller DO

Birthday: 1997-01-04

Address: Apt. 156 12935 Runolfsdottir Mission, Greenfort, MN 74384-6749

Phone: +16704982844747

Job: Corporate Administration Planner

Hobby: Mountain biking, Jewelry making, Stone skipping, Lacemaking, Knife making, Scrapbooking, Letterboxing

Introduction: My name is Kareem Mueller DO, I am a vivacious, super, thoughtful, excited, handsome, beautiful, combative person who loves writing and wants to share my knowledge and understanding with you.