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:

tab1 <- table(data$x2) # Make frequency tabletab1 # Print frequency table# a b c d e # 1 3 2 1 1

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)

FAQs

What is table () in R with example? ›

The table() function in R is a versatile tool that allows you to create frequency tables, also known as contingency tables, from categorical data. Its primary purpose is to summarize and organize the counts or frequencies of different unique values present within a vector, factor, or column of a data frame.

How to create a table from dataset in R? ›

In R, these tables can be created using table() along with some of its variations. To use table(), simply add in the variables you want to tabulate separated by a comma.

How do you create a table function? ›

Define the CREATE FUNCTION (table) statement:
  1. Specify a name for the function.
  2. Specify a name and data type for each input parameter.
  3. Specify the routine attributes.
  4. Specify the RETURNS TABLE keyword.
  5. Specify the BEGIN ATOMIC keyword to introduce the function-body.
  6. Specify the function body.

How to create a table of two variables in R? ›

To create a two way table, simply pass two variables to the table() function instead of one. The output of a two-way table is a two-dimensional array of integers where the row names are set to the levels of the first variable and the column names are set to the levels of the second variable.

How do I write to a table in R? ›

The write. table() function is used to export a dataframe or matrix to a file in the R Language. This function converts a dataframe into a text file in the R Language and can be used to write dataframe into a variety of space-separated files for example CSV( comma separated values) files.

What is a table with example? ›

Tables are essential objects in a database because they hold all the information or data. For example, a database for a business can have a Contacts table that stores the names of their suppliers, e-mail addresses, and telephone numbers.

How to make a table from a dataframe? ›

Introduction:
  1. Step 1: Import Pandas. First, we need to import the Pandas library using the import statement: ...
  2. Step 2: Create a Table from a Dictionary. We can create a table from a dictionary using the DataFrame() function. ...
  3. Step 3: Create a Table from a List of Lists. ...
  4. Step 4: Add a New Column. ...
  5. Step 5: Remove a Column.
Mar 30, 2023

How do you create a data collection table? ›

Choose a Tool or Method
  1. Name your table. Write a title at the top of your paper. ...
  2. Figure out how many columns and rows you need.
  3. Draw the table. Using a ruler, draw a large box. ...
  4. Label all your columns. ...
  5. Record the data from your experiment or research in the appropriate columns. ...
  6. Check your table.
Mar 8, 2024

How can I create tables? ›

Try it!
  1. Select a cell within your data.
  2. Select Home and choose. Format as Table under Styles.
  3. Choose a style for your table.
  4. In the Create Table dialog box, confirm or set your cell range.
  5. Mark if your table has headers, and select OK.

What is an example of a table function? ›

Tables are created by inputting numbers into functions.

Let's use the function y = 2x + 1 as an example. This function tells us the relationship between the input variable (x) and the output variable (y). If we input a value for x, we get a specific value for y. The table above shows x values and their y values.

Which function is used to create a table? ›

'Table' function is used to create a data table in MS Excel. The data tables allow the user to see the results of a variety of different inputs all at once.

How to create a table from existing data in R? ›

One common approach is to use the table() function, which allows you to create a two-way table by cross-tabulating two categorical variables. Alternatively, you can create a table directly using the matrix() function and then convert it to a table using the as. table() function.

How do you create a data table with multiple variables? ›

Making a table involving a second variable is also simple: drag a second variable on top of the table, releasing it in the Columns or By fields. Not surprisingly, many people think that a third variable should be able to be added by dragging it onto the first two, but this does not work!

How do I create a chart with two data sets in R? ›

In many situations, the way to do this is to create the initial plot and add additional information. For example, to plot bivariate data, the plot command is used to initialize and create the plot. The points command can then add additional data sets to the plot.

What does read table in R do? ›

table() function in R can be used to read a text file's contents. A versatile and often used function for reading tabular data from different file formats, including text files, is read. table(). It returns the data in the form of a table.

What is the table function in R proportion? ›

A: You can calculate basic proportions in R using the prop. table function after creating a frequency table with the table function. This method is straightforward and effective for beginners learning R programming.

What does model tables do in R? ›

Computes summary tables for model fits, especially complex aov fits.

What is the use of summary and table function used in R? ›

A user gets a summary in R programming by using the summary function with a numerical vector (or a group of numerical vectors such as columns in a data frame). The summary function returns the minimum, maximum, mean, median, and 1st and 3rd quartiles for a numerical vector.

Top Articles
Latest Posts
Article information

Author: Velia Krajcik

Last Updated:

Views: 6199

Rating: 4.3 / 5 (74 voted)

Reviews: 81% of readers found this page helpful

Author information

Name: Velia Krajcik

Birthday: 1996-07-27

Address: 520 Balistreri Mount, South Armand, OR 60528

Phone: +466880739437

Job: Future Retail Associate

Hobby: Polo, Scouting, Worldbuilding, Cosplaying, Photography, Rowing, Nordic skating

Introduction: My name is Velia Krajcik, I am a handsome, clean, lucky, gleaming, magnificent, proud, glorious person who loves writing and wants to share my knowledge and understanding with you.