How to Count the Sum of Continuous Variables in Twoway Table in R

Contingency Table in R (5 Examples)

In this R tutorial you'll learn how to make a contingency table.

The content of the article looks like this:

Here's the step-by-step process.

Creating Example Data

Initially, let's construct some exemplifying data:

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

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

table 1 data frame contingency table

As you can see based on Table 1, the example data is a data frame containing seven rows and two variables.

Example 1: Create Two-way Contingency Table

This example illustrates how to make a two-way contingency table (or cross tabulation / crosstab) in the R programming language.

For this task, we can apply the table() function to our example data frame as shown in the following R code:

my_tab1                <-                table(data)                # Create two-way contingency table                my_tab1                # Print two-way contingency table                #    x2                # x1  a b c                #   A 1 0 1                #   B 0 1 2                #   C 0 0 1                #   D 0 1 0              

my_tab1 <- table(data) # Create two-way contingency table my_tab1 # Print two-way contingency table # x2 # x1 a b c # A 1 0 1 # B 0 1 2 # C 0 0 1 # D 0 1 0

The previous output of the RStudio console shows a two-way cross tabulation of the two variables in our data frame. For instance, the combination of A and a occurs once, and the combination of B and a occurs not at all.

Example 2: Draw Plot of Contingency Table

In this example, I'll demonstrate how to draw a plot of a 2×2 contingency table.

The following R code uses the plot() function provided by Base R to create a mosaic plot of the table object we have constructed in Example 1:

plot(my_tab1)                # Plot contingency table              

plot(my_tab1) # Plot contingency table

r graph figure 1 contingency table

Figure 1 shows the output of the previous R programming syntax – A mosaic graphic showing the cross tabulation of the two columns in our example data.

By the way, it is also possible to draw frequency count tables in a graph. For more info, have a look here.

Example 3: Add Margins to Contingency Table

Example 3 shows how to add the sum of each row and each column of a table object (i.e. the margins) to this table.

To achieve this, we can apply the addmargins function as illustrated below:

my_tab2                <-                addmargins(my_tab1)                # Add margins to contingency table                my_tab2                # Print contingency table with margins                #      x2                # x1    a b c Sum                #   A   1 0 1   2                #   B   0 1 2   3                #   C   0 0 1   1                #   D   0 1 0   1                #   Sum 1 2 4   7              

my_tab2 <- addmargins(my_tab1) # Add margins to contingency table my_tab2 # Print contingency table with margins # x2 # x1 a b c Sum # A 1 0 1 2 # B 0 1 2 3 # C 0 0 1 1 # D 0 1 0 1 # Sum 1 2 4 7

The previous table contains the same values as the table we have created in Example 1, plus the margins of each row and column.

Example 4: Create Contingency Table with Proportions

The following R programming syntax shows how to get a two-way contingency table with proportions (or probabilities).

To do this, we can apply the prop.table function as shown in the following R syntax:

my_tab3                <-                prop.                table                (my_tab1)                # Contingency table with proportions                my_tab3                # Print contingency table with proportions                #    x2                # x1          a         b         c                #   A 0.1428571 0.0000000 0.1428571                #   B 0.0000000 0.1428571 0.2857143                #   C 0.0000000 0.0000000 0.1428571                #   D 0.0000000 0.1428571 0.0000000              

my_tab3 <- prop.table(my_tab1) # Contingency table with proportions my_tab3 # Print contingency table with proportions # x2 # x1 a b c # A 0.1428571 0.0000000 0.1428571 # B 0.0000000 0.1428571 0.2857143 # C 0.0000000 0.0000000 0.1428571 # D 0.0000000 0.1428571 0.0000000

Example 5: Create Three-way Contingency Table

So far, we have created different types of two-way contingency tables. However, it is also possible to perform a three-way cross tabulation.

For this, we first have to extend our example data frame by another variable:

data_three                <-                data.                frame                (data,                # Create data frame with three variables                x3                =                c(                1                :                4,                1                :                3                )                )                data_three                # Print data frame with three variables              

data_three <- data.frame(data, # Create data frame with three variables x3 = c(1:4, 1:3)) data_three # Print data frame with three variables

table 2 data frame contingency table

Table 2 shows the output of the previous R programming code – i.e. a data frame with three variables.

Next, we can apply the table command to this data frame to create a three-way contingency table:

my_tab4                <-                table(data_three)                # Create three-way contingency table                my_tab4                # Print three-way contingency table                # , , x3 = 1                #                                #    x2                # x1  a b c                #   A 1 0 1                #   B 0 0 0                #   C 0 0 0                #   D 0 0 0                #                                # , , x3 = 2                #                                #    x2                # x1  a b c                #   A 0 0 0                #   B 0 1 1                #   C 0 0 0                #   D 0 0 0                #                                # , , x3 = 3                #                                #    x2                # x1  a b c                #   A 0 0 0                #   B 0 0 1                #   C 0 0 1                #   D 0 0 0                #                                # , , x3 = 4                #                                #    x2                # x1  a b c                #   A 0 0 0                #   B 0 0 0                #   C 0 0 0                #   D 0 1 0              

my_tab4 <- table(data_three) # Create three-way contingency table my_tab4 # Print three-way contingency table # , , x3 = 1 # # x2 # x1 a b c # A 1 0 1 # B 0 0 0 # C 0 0 0 # D 0 0 0 # # , , x3 = 2 # # x2 # x1 a b c # A 0 0 0 # B 0 1 1 # C 0 0 0 # D 0 0 0 # # , , x3 = 3 # # x2 # x1 a b c # A 0 0 0 # B 0 0 1 # C 0 0 1 # D 0 0 0 # # , , x3 = 4 # # x2 # x1 a b c # A 0 0 0 # B 0 0 0 # C 0 0 0 # D 0 1 0

As you can see, the previous output has created a list object. Each element of this list shows a two-way contingency table given a certain value in the third variable of our input data.

For instance, the first list element of the previously shown list contains a two-way contingency table for the case when x3 is equal to the value 1.

Video & Further Resources

Have a look at the following video on the Statistics Globe YouTube channel. I explain the R programming codes of this article in the video.

The YouTube video will be added soon.

In addition, you may want to have a look at some of the other tutorials on this website. Some articles can be found below:

  • Contingency Table Across Multiple Columns
  • Extend Contingency Table with Proportions & Percentages
  • How to Create a Frequency Table in R
  • R Programming Overview

You have learned in this tutorial how to calculate and create a contingency table in R. Don't hesitate to let me know in the comments, if you have any further questions.

rodriguezantogginly.blogspot.com

Source: https://statisticsglobe.com/contingency-table-r

0 Response to "How to Count the Sum of Continuous Variables in Twoway Table in R"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel