The mode in R is the value with the most occurrences in a vector or column of a data frame (including numeric and string values). This article will share how to find mode in R. Let’s get started.

**How to find mode in R**

The R language does not provide any specific function to find the mode of a vector or a data frame. We give the following solution to find mode in R.

First, we use the `unique()`

function to find and remove duplicates from the input data.

Then we use the `match()`

function to get the index of each input vector element in the vector just returned by the unique() function.

Next, we use the `tabulate()`

function on the vector generated by the `match()`

function. The `tabulate()`

function returns a numeric vector consisting of the number of occurrences of each integer in the input vector.

**Syntax:**

`tabulate(bin, nbins)`

**Parameters:**

**bin**: a vector of numbers.

**nbins**: the number of bins to be used.

**Example:**

input <- c(1, 0, 2, 3, 3, 0, 3, 3, 3, 0, 0, 4, 4, 5) # Remove duplicates uniq <- unique(input) uniq # Index of each input vector element in the 'uniq' vector. index <- match(input, uniq) index # Number of occurrences of each integer in the 'index' vector num_occur <- tabulate(index) num_occur

**Output:**

```
[1] 1 0 2 3 4 5
[1] 1 2 3 4 4 2 4 4 4 2 2 5 5 6
[1] 1 4 1 5 2 1
```

The mode to look for is the value of the deduplicated vector whose index is equal to the index of the maximum value in the vector returned by the `tabulate()`

function.

From the above steps, we build a reusable function.

**Completed code:**

mode <- function(input) { uniq <- unique(input) num_occur <- tabulate(match(input, uniq)) uniq[num_occur == max(num_occur)] }

The following simple example will show you how this function works.

**Example:**

# Find mode in R mode <- function(input) { uniq <- unique(input) num_occur <- tabulate(match(input, uniq)) uniq[num_occur == max(num_occur)] } # Create a numeric vector num <- c(1, 0, 2, 3, 3, 0, 3, 3, 3, 0, 0, 4, 4, 5) # Create a character vector lang <- c( "JavaScript", "R", "Java", "R", "R", "JavaScript", "Python", "Python", "R", "JavaScript" ) cat("Mode of the numeric vector: ") mode(num) cat("Mode of the character vector: ") mode(lang)

**Output:**

```
Mode of the numeric vector: [1] 3
Mode of the character vector: [1] "R"
```

**Summary**

There isn’t any specific function to find the mode in R. In this article, we have built a function that includes some simple functions in R to find mode. Hope this is helpful to you. Thank you for reading.

Hello, my name’s Bruce Warren. You can call me Bruce. I’m interested in programming languages, so I am here to share my knowledge of programming languages with you, especially knowledge of C, C++, Java, JS, PHP.

**Name of the university: **KMA

**Major**: ATTT

**Programming Languages**: C, C++, Java, JS, PHP